|
WSACancelAsyncRequest
The Windows Sockets WSACancelAsyncRequest function cancels an incomplete asynchronous operation.
int WSACancelAsyncRequest (
HANDLE hAsyncTaskHandle
|
| );
|
|
Parameters
hAsyncTaskHandle
[in] Specifies the asynchronous operation to be canceled.
Remarks
The WSACancelAsyncRequest function is used to cancel an asynchronous operation which was initiated by
one of the WSAAsyncGetXByY functions such as WSAAsyncGetHostByName. The operation to be canceled is identified by the hAsyncTaskHandle parameter, which should be set to the asynchronous task handle as returned by
the initiating WSAAsyncGetXByY function.
Return Values
The value returned by WSACancelAsyncRequest is zero if the operation was successfully canceled. Otherwise, the value
SOCKET_ERROR is returned, and a specific error number may be retrieved by calling WSAGetLastError.
Comments
An attempt to cancel an existing asynchronous WSAAsyncGetXByY operation can fail with an error code of WSAEALREADY for two reasons. First,
the original operation has already completed and the application has dealt with
the resultant message. Second, the original operation has already completed
but the resultant message is still waiting in the application window queue.
Note It is unclear whether the application can usefully distinguish between
WSAEINVAL and WSAEALREADY, since in both cases the error indicates that there is no
asynchronous operation in progress with the indicated handle. [Trivial
exception: zero is always an invalid asynchronous task handle.] The Windows Sockets
specification does not prescribe how a conformant Windows Sockets provider should
distinguish between the two cases. For maximum portability, a Windows Sockets
application should treat the two errors as equivalent.
Error Codes
WSANOTINITIALISED
| A successful WSAStartup must occur before using this function.
| WSAENETDOWN
| The network subsystem has failed.
| WSAEINVAL
| Indicates that the specified asynchronous task handle was invalid
| WSAEINPROGRESS
| A blocking Windows Sockets 1.1 call is in progress, or the service provider is
still processing a callback function.
| WSAEALREADY
| The asynchronous routine being canceled has already completed.
|
See Also
WSAAsyncGetHostByAddr, WSAAsyncGetHostByName, WSAAsyncGetProtoByName, WSAAsyncGetProtoByNumber, WSAAsyncGetServByName, WSAAsyncGetServByPort
Related Links
Software for Delphi and C++ Builder developers
Software for Visual Studio .NET developers
Software for Visual Basic 6 developers
Delphi Tips&Tricks
MegaDetailed.NET
More Online Helps
Win32 Programmer's Reference (win32.hlp)
Win32 Multimedia Programmer's Reference (mmedia.hlp)
OLE Programmer's Reference (ole.hlp)
Microsoft Windows Pen API Programmer's Reference (penapi.hlp)
Microsoft Windows Telephony API (TAPI) Programmer's Reference (tapi.hlp)
Unix Manual Pages
|