WFDOpenHandle 函数 (wlanapi.h)

WFDOpenHandle 函数打开 Wi-Fi Direct 服务的句柄,并协商要使用的 Wi-FI Direct API 版本。

语法

DWORD WFDOpenHandle(
  [in]  DWORD   dwClientVersion,
  [out] PDWORD  pdwNegotiatedVersion,
  [out] PHANDLE phClientHandle
);

参数

[in] dwClientVersion

客户端支持的 Wi-Fi Direct API 的最高版本。

对于Windows 8和Windows Server 2012,此参数应设置为在 Wlanapi.h 头文件中定义的WFD_API_VERSION常量。

[out] pdwNegotiatedVersion

指向要接收协商版本的 DWORD 的指针。

如果 WFDOpenHandle 函数成功,则返回与此会话要使用的 Wi-Fi Direct 服务协商的版本。 此值通常是客户端和 Wi-Fi Direct 服务支持的最高版本。

[out] phClientHandle

指向 HANDLE 的指针,用于接收此会话的 Wi-Fi Direct 服务的句柄。

如果 WFDOpenHandle 函数成功,则返回要在此会话中使用的 Wi-Fi Direct 服务的句柄。

返回值

如果函数成功,则返回值为 ERROR_SUCCESS。

如果函数失败,则返回值可能是以下返回代码之一。

返回代码 说明
ERROR_INVALID_PARAMETER
参数不正确。

如果 pdwNegotiatedVersion 参数为 NULLphClientHandle 参数为 NULL,则返回此错误。 如果 dwClientVersion 参数不等于 WFD_API_VERSION,也会返回此值。

ERROR_NOT_ENOUGH_MEMORY
没有足够的存储空间可用于处理此命令。

如果系统无法分配内存来创建客户端上下文,则返回此错误。

ERROR_REMOTE_SESSION_LIMIT_EXCEEDED
试图与网络服务器建立会话,但目前与该服务器建立的会话太多。

如果 Wi-Fi Direct 服务发出的句柄过多,则返回此错误。

RPC_STATUS
各种错误代码。

注解

WFDOpenHandle 函数是 Wi-Fi Direct 的一部分,这是 Windows 8 和 Windows Server 2012 中的一项新功能。 Wi-Fi Direct 基于 Wi-Fi 联盟 Wi-Fi 对等技术规范 v1.1 的开发, (请参阅 Wi-Fi 联盟发布的规范) 。 Wi-Fi 对等技术规范的目标是为 Wi-Fi 设备到设备连接提供解决方案,而无需无线接入点 (无线 AP) 来设置连接或使用现有的 Wi-Fi adhoc (IBSS) 机制。

若要使用 Wi-Fi Direct,应用程序必须先通过调用 WFDOpenHandle 函数获取 Wi-Fi Direct 服务的句柄。 WFDOpenHandle 函数返回的 Wi-Fi Direct (WFD) 句柄用于对 Wi-Fi Direct 服务进行的后续调用。 使用 Wi-Fi Direct 服务完成应用程序后,应用程序应调用 WFDCloseHandle 函数,以向 Wi-Fi Direct 服务发出信号,表明应用程序是使用该服务完成的。 这样,Wi-Fi Direct 服务就可以释放应用程序使用的资源。

要求

要求
最低受支持的客户端 Windows 8 [仅限桌面应用]
最低受支持的服务器 Windows Server 2012 [仅限桌面应用]
目标平台 Windows
标头 wlanapi.h
Library Wlanapi.lib
DLL Wlanapi.dll

另请参阅

WFDCancelOpenSession

WFDCloseHandle

WFDCloseSession

WFDOpenLegacySession

WFDStartOpenSession

WFDUpdateDeviceVisibility

WFD_OPEN_SESSION_COMPLETE_CALLBACK