IOCTL_BTH_SDP_SERVICE_ATTRIBUTE_SEARCH IOCTL (bthioctl.h)

IOCTL_BTH_SDP_SERVICE_ATTRIBUTE_SEARCH请求将 SDP 服务和属性搜索合并到单个操作中。 这允许调用方直接从远程设备获取 SDP 记录。

主要代码

IRP_MJ_DEVICE_CONTROL

输入缓冲区

AssociatedIrp.SystemBuffer 成员包含 IOCTL_BTH_SDP_SERVICE_ATTRIBUTE_SEARCH 结构,用于指定要与远程 SDP 服务器的连接句柄、GUID 数组以及要搜索的属性值范围。

输入缓冲区长度

的长度 IOCTL_BTH_SDP_SERVICE_ATTRIBUTE_SEARCH 结构。

输出缓冲区

AssociatedIrp.SystemBuffer 成员指向一个缓冲区,该缓冲区保存BTH_SDP_STREAM_RESPONSE结构,后跟原始 SDP 记录流。

输出缓冲区长度

BTH_SDP_STREAM_RESPONSE结构的长度。

状态块

如果请求成功,则 STATUS_BLOCK 结构的 Information 成员将设置为 SDP 响应流的大小(以字节为单位)或输出缓冲区的大小(以较小者为准)。 否则, 信息 成员设置为零。

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 记录后,可以使用 SDP 函数对其进行分析。 指向这些函数的指针由 提供 BTHDDI_SDP_PARSE_INTERFACE 接口。

要求

要求
最低受支持的客户端 版本:Windows Vista 及更高版本中的 _Supported。
标头 bthioctl.h (包括 Bthioctl.h)
IRQL <= PASSIVE_LEVEL

另请参阅

BTHDDI_SDP_PARSE_INTERFACE

BTH_SDP_STREAM_RESPONSE

IOCTL_BTH_SDP_SERVICE_ATTRIBUTE_SEARCH