共用方式為


IOCTL_BTH_SDP_ATTRIBUTE_SEARCH IOCTL (b)

IOCTL_BTH_SDP_ATTRIBUTE_SEARCH要求會取得指定 SDP 記錄的屬性。

主要程序代碼

IRP_MJ_DEVICE_CONTROL

輸入緩衝區

AssociatedIrp.SystemBuffer 成員包含 BTH_SDP_ATTRIBUTE_SEARCH_REQUEST 結構,指定要搜尋的屬性遠端計算機範圍加上其他索引鍵成員。

輸入緩衝區長度

的長度 BTH_SDP_ATTRIBUTE_SEARCH_REQUEST 結構。

輸出緩衝區

AssociatedIrp.SystemBuffer 成員指向包含BTH_SDP_STREAM_RESPONSE結構的緩衝區,後面接著可變長度的原始 SDP 數據流。

輸出緩衝區長度

BTH_SDP_STREAM_RESPONSE 結構的長度。

狀態區塊

如果要求成功,STATUS_BLOCK結構 的資訊成員會 設定為 BTH_SDP_STREAM_RESPONSE 的大小或輸出緩衝區的大小,以位元組為單位,以位元組為單位,以較小的方式設定。 否則, Information 成員會設定為零。

Status 成員會設定為下表中的其中一個值。

狀態值 描述
STATUS_SUCCESS IOCTL 已順利完成。
STATUS_DEVICE_NOT_CONNECTED SDP 服務所在的裝置未連線。
STATUS_INSUFFICIENT_RESOURCES 記憶體不足,無法完成此作業。
STATUS_INVALID_BUFFER_SIZE 輸出緩衝區的大小不正確。
STATUS_INVALID_PARAMETER 輸入緩衝區中的其中一個值無效。
STATUS_REQUEST_NOT_ACCEPTED SDP 服務已拒絕要求。
STATUS_TOO_MANY_GUIDS_REQUESTED SDP 服務無法處理在輸入緩衝區中傳遞的 GUID 數目。

備註

在大部分情況下,配置文件驅動程式可以藉由呼叫 來結合 SDP 服務和屬性搜尋 IOCTL_BTH_SDP_SERVICE_ATTRIBUTE_SEARCH IOCTL。 如果配置檔驅動程式必須減少透過藍牙連結傳輸的 SDP 流量,或使用少量訊息傳輸單位從 SDP 伺服器擷取資訊, (MTU) ,則配置檔驅動程式應該呼叫 IOCTL_BTH_SDP_SERVICE_SEARCH 執行服務搜尋的IOCTL。 然後,配置文件驅動程序應該呼叫 IOCTL_BTH_SDP_ATTRIBUTE_SEARCH IOCTL 來執行屬性搜尋。

輸出緩衝區中傳回的BTH_SDP_STREAM_RESPONSE結構包含整個 SDP 記錄的大小、大小、位元組,以及BTH_SDP_STREAM_RESPONSE結構後面的原始 SDP 記錄數據流大小,以及該數據流的第一個字節的相關信息。 可變長度數據流是搜尋所傳回的 SDP 記錄屬性。

規格需求

需求
最低支援的用戶端 Windows Vista 和更新版本中的版本:_Supported。
標頭 b (ctl.h)
IRQL <= PASSIVE_LEVEL

另請參閱

BTH_SDP_ATTRIBUTE_SEARCH_REQUEST

BTH_SDP_STREAM_RESPONSE

IOCTL_BTH_SDP_SERVICE_ATTRIBUTE_SEARCH

IOCTL_BTH_SDP_SERVICE_SEARCH