次の方法で共有


PeerDistServerCancelAsyncOperation 関数 (peerdist.h)

PeerDistServerCancelAsyncOperation 関数は、コンテンツ識別子と OVERLAPPED 構造体に関連付けられている非同期操作を取り消します。

構文

DWORD PeerDistServerCancelAsyncOperation(
  [in] PEERDIST_INSTANCE_HANDLE hPeerDist,
       DWORD                    cbContentIdentifier,
  [in] PBYTE                    pContentIdentifier,
  [in] LPOVERLAPPED             pOverlapped
);

パラメーター

[in] hPeerDist

PeerDistStartup によって返されるPEERDIST_INSTANCE_HANDLE

cbContentIdentifier

コンテンツ識別子の長さ (バイト単位)。

[in] pContentIdentifier

コンテンツ識別子を含む配列へのポインター。

[in] pOverlapped

取り消し中の非同期操作データを含む OVERLAPPED 構造体へのポインター。

戻り値

OVERLAPPED 構造体関連付けられている操作が正常に取り消された場合、関数はERROR_SUCCESS値を返します。 それ以外の場合は、関数から次の値のいずれかが返されます。

リターン コード 説明
ERROR_INVALID_PARAMETER
1 つ以上のパラメーターが無効です。
ERROR_INVALID_HANDLE
hPeerDist ハンドルが無効です。
PEERDIST_ERROR_OPERATION_NOT_FOUND
OVERLAPPED 構造体の操作が見つかりません。
ERROR_ACCESS_DISABLED_BY_POLICY
この機能は、グループ ポリシーによって無効になっています。
PEERDIST_ERROR_SERVICE_UNAVAILABLE
サービスを利用できません。

注釈

この関数は操作を同期的に取り消しますが、取り消し結果が完了ポートにポストされるか、待機イベントが 'signaled' 状態に設定されるまで戻りません。 待機中のすべてのスレッドは、 PeerDistServerCancelAsyncOperation 関数が返す前または後に、操作の完了通知を受け取ることができます。

この関数は、操作が取り消し済みとして完了することを保証しません。 キャンセル結果は、他の結果が投稿されていない場合にのみ投稿されます。

正常に取り消された操作を確認するには、 GetOverlappedResult を呼び出し、予期される 戻り値は FALSE にする必要があります。

さらに、PeerDistServerCancelAsyncOperation が成功した直後に GetLastError を呼び出すと、ERROR_OPERATION_ABORTEDエラー コードが返されます。

要件

要件
サポートされている最小のクライアント Windows 7 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー peerdist.h
Library PeerDist.lib
[DLL] PeerDist.dll

こちらもご覧ください

PeerDistClientCancelAsyncOperation

PeerDistClientOpenContent