適用於服務查詢的藍牙和 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,從 Bluetooth ProtocolDescriptorList SDP 屬性的第一個項目轉換。 如果指定 LUP_RETURN_ADDR,則傳回 。 |
lpBlob | 自選。 包含進階參數以限制搜尋結果之 BTH_QUERY_SERVICE 結構的指標。 如果提供,則會忽略 lpServiceClassId,且快取查詢不會成功。 |
|
相關主題
-
適用於設定服務 的 藍牙和 WSAQUERYSET
-
藍牙和 WSALookupServiceNext