PeerDistClientCancelAsyncOperation 関数 (peerdist.h)
PeerDistClientCancelAsyncOperation 関数は、OVERLAPPED 構造体と PeerDistClientOpenContent によって返されるコンテンツ ハンドルに関連付けられた非同期操作を取り消します。
構文
DWORD PeerDistClientCancelAsyncOperation(
[in] PEERDIST_INSTANCE_HANDLE hPeerDist,
[in] PEERDIST_CONTENT_HANDLE hContentHandle,
[in, optional] LPOVERLAPPED pOverlapped
);
パラメーター
[in] hPeerDist
PeerDistStartup によって返されるPEERDIST_INSTANCE_HANDLE。
[in] hContentHandle
PeerDistClientOpenContent 関数呼び出しによって開かれたコンテンツ ハンドル。
[in, optional] pOverlapped
取り消し中の非同期操作データを含む OVERLAPPED 構造体へのポインター。 ポインターが NULL の 場合、指定されたコンテンツ ハンドルのすべての非同期操作が取り消されます。
戻り値
指定した OVERLAPPED 構造体に関連付けられた操作が正常に取り消された場合、関数はERROR_SUCCESS値を返します。 それ以外の場合は、関数から次の値のいずれかが返されます。
リターン コード | 説明 |
---|---|
|
1 つ以上のパラメーターが無効です。 |
|
hPeerDist ハンドルが無効です。 |
|
指定した OVERLAPPED 構造体に関連付けられている操作が見つかりません。 |
|
この機能は、グループ ポリシーによって無効になっています。 |
|
サービスを利用できません。 |
注釈
この関数は操作を同期的に取り消しますが、キャンセル結果が完了ポートにポストされるか、待機イベントがシグナル状態に設定されるまで戻りません。 待機中のすべてのスレッドは、 PeerDistClientCancelAsyncOperation 関数が返される前または後に、操作の完了通知を受け取ることができます。
この関数は、操作が取り消し済みとして完了することを保証しません。 キャンセル結果は、他の結果が投稿されていない場合にのみ投稿されます。
正常に取り消された操作を確認するには、 GetOverlappedResult を呼び出し、予期される 戻り値は FALSE にする必要があります。
さらに、PeerDistClientCancelAsyncOperation が成功した直後に GetLastError を呼び出すと、ERROR_OPERATION_ABORTEDエラー コードが返されます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 7 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 R2 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | peerdist.h |
Library | PeerDist.lib |
[DLL] | PeerDist.dll |