次の方法で共有


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値を返します。 それ以外の場合は、関数から次の値のいずれかが返されます。

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

注釈

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

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

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

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

要件

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

こちらもご覧ください

PeerDistServerCancelAsyncOperation