PeerDistClientCancelAsyncOperation function (peerdist.h)
DWORD PeerDistClientCancelAsyncOperation( [in] PEERDIST_INSTANCE_HANDLE hPeerDist, [in] PEERDIST_CONTENT_HANDLE hContentHandle, [in, optional] LPOVERLAPPED pOverlapped );
A PEERDIST_INSTANCE_HANDLE returned by PeerDistStartup.
A content handle opened by PeerDistClientOpenContent function call.
[in, optional] pOverlapped
Pointer to an OVERLAPPED structure that contains the canceling asynchronous operation data. If the pointer is NULL all asynchronous operations for specified content handle will be canceled.
The function will return ERROR_SUCCESS value if the operation associated with the specified OVERLAPPED structure is successfully canceled. Otherwise, the function may return one of the following values:
||One or more parameters are invalid.|
||The hPeerDist handle is invalid.|
||The operation associated with the specified OVERLAPPED structure cannot be found.|
||The feature is disabled by Group Policy.|
||The service is unavailable.|
This function will synchronously cancel the operation, but will not return until the cancellation result is posted to the completion port or wait event is set to the signaled state. Any threads in waiting can receive the completion notice for the operation before or after the PeerDistClientCancelAsyncOperation function returns.
This function does not guarantee that the operation will complete as canceled. The cancellation result will be posted only if no other results have been posted.
To confirm successfully canceled operations, a call should be made to GetOverlappedResult with an expected return of FALSE.
Additionally, calling GetLastError immediately after a successful PeerDistClientCancelAsyncOperation will return the ERROR_OPERATION_ABORTED error code.
|Minimum supported client||Windows 7 Professional [desktop apps only]|
|Minimum supported server||Windows Server 2008 R2 [desktop apps only]|