WSAProviderCompleteAsyncCall 函数 (ws2spi.h)
WSAProviderCompleteAsyncCall 函数在完成对命名空间版本 2 提供程序的异步调用时通知客户端。
语法
INT WSAAPI WSAProviderCompleteAsyncCall(
HANDLE hAsyncCall,
INT iRetCode
);
参数
hAsyncCall
传递给正在完成的异步调用的句柄。 此句柄由客户端传递到异步函数调用中的命名空间版本 2 提供程序。
iRetCode
对命名空间 version-2 提供程序的异步调用的返回代码。
返回值
如果未发生错误, 则 WSAProviderCompleteAsyncCall 返回零。
如果函数失败,则返回值SOCKET_ERROR。 若要获取扩展错误信息,请调用 WSAGetLastError,这将返回以下扩展错误值之一。
错误代码 | 含义 |
---|---|
内存不足,无法执行该操作。 | |
发生内部错误。 | |
参数无效。 如果 hAsyncCall 参数为 NULL,则返回此错误。 | |
Ws2_32.dll 尚未初始化。 应用程序必须先调用 WSAStartup, 然后才能调用任何 Windows 套接字函数。 |
注解
WSAProviderCompleteAsyncCall 函数用作命名空间服务提供程序版本 2 的一部分, (NSPv2) 体系结构在 Windows Vista 及更高版本上可用。
在 Windows Vista 和 Windows Server 2008 上, WSAUnadvertiseProvider 函数只能用于NS_EMAIL命名空间提供程序上的操作。 Windows Vista 和 Windows Server 2008 不支持对 NSPv2 提供程序的异步调用。 因此 ,WSAProviderCompleteAsyncCall 当前不适用。 当支持对命名空间提供程序的异步调用时,计划将此函数用于更高版本的 Windows。
通常,NSPv2 提供程序是在调用应用程序以外的进程中实现的。 由于客户端活动,NSPv2 提供程序不会激活。 每个托管应用程序的提供程序通过调用 WSAAdvertiseProvider 和 WSAUnadvertiseProvider 函数来决定何时使特定提供程序可用或不可用。 客户端活动仅导致尝试联系提供程序,如果可用 (命名空间提供程序播发) 。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 [仅限桌面应用] |
目标平台 | Windows |
标头 | ws2spi.h |
Library | Ws2_32.lib |
DLL | Ws2_32.dll |