用于服务查询的蓝牙和 WSAQUERYSET
蓝牙使用具有各种功能的 WSAQUERYSET 结构,以方便发现蓝牙命名空间中的设备和服务,NS_BTH。
WSALookupServiceBegin 和 WSALookupServiceNext 函数使用 WSAQUERYSET 结构获取有关服务查询过程的数据。 下表介绍了如何为此在 WSAQUERYSET 结构中设置成员值。
成员 | WSALookupServiceBegin 的输入 | 从 WSALookupServiceNext 返回的值 |
---|---|---|
dwSize | 必须设置为 sizeof (WSAQUERYSET) 。 | sizeof (系统返回的 WSAQUERYSET) 。 |
dwOutputFlags | 未使用。 | 未使用。 |
lpszServiceInstanceName | 未使用。 | 服务的显示名称,从蓝牙 ServiceName SDP 属性的默认语言编码转换为 UTF-8 编码的字符串。 如果指定了LUP_RETURN_NAME,则返回 。 |
lpServiceClassId | 必需。 要为其执行搜索的服务的最具体的单一蓝牙 UUID。 例如,如果此值设置为 L2CAP 协议的 UUID,则它会在目标设备上使用 L2CAP 协议返回所有服务。 如果设置为特定服务的 UUID,它将仅返回该服务的实例。 | 未使用。 |
lpVersion | 未使用。 | 未使用。 |
lpszComment | 未使用。 | 服务的说明,从蓝牙 ServiceDescription SDP 属性的默认语言编码转换为 UTF-8 编码字符串。 如果指定 了LUP_RETURN_COMMENT ,则返回 。 |
dwNameSpace | 必须NS_BTH。 | 返回NS_BTH。 |
lpNSProviderId | 未使用。 | 未使用。 |
lpszContext | 必需。 用于建立 SDP 连接和查询服务的蓝牙设备地址。 此值必须是使用 WSAAddressToString 函数调用转换的字符串。 如果提供了本地蓝牙设备地址,则会搜索本地 SDP 数据库。 | 未使用。 |
dwNumberOfProtocols | 未使用。 | 未使用。 |
lpafpProtocols | 未使用。 | 未使用。 |
lpszQueryString | 未使用。 | 未使用。 |
dwNumberOfCsAddrs | 未使用。 | 指示 CSADDR_INFO 结构数组中的元素数。 |
lpcsaBuffer | 未使用。 | 指向 CSADDR_INFO 结构的指针,该结构的 LocalAddr.lpSockaddr 成员指向包含远程服务的完整可连接地址 的SOCKADDR_BTH ,该地址从蓝牙 ProtocolDescriptorList SDP 属性的第一个条目转换。 如果指定 了LUP_RETURN_ADDR ,则返回 。 |
lpBlob | 可选。 指向 BTH_QUERY_SERVICE 结构的指针,该结构包含用于限制搜索结果的高级参数。 如果提供, 则忽略 lpServiceClassId 并且缓存的查询不会成功。 |
|
相关主题
-
蓝牙和 WSALookupServiceNext
反馈
提交和查看相关反馈