BTH_SET_SERVICE 结构 (ws2bth.h)
BTH_SET_SERVICE 结构为指定的蓝牙服务提供服务信息。
语法
typedef struct _BTH_SET_SERVICE {
PULONG pSdpVersion;
HANDLE *pRecordHandle;
ULONG fCodService;
ULONG Reserved[5];
ULONG ulRecordLength;
UCHAR pRecord[1];
} BTH_SET_SERVICE, *PBTH_SET_SERVICE, BTHNS_SETBLOB, *PBTHNS_SETBLOB;
成员
pSdpVersion
SDP 的版本。 客户端将此成员设置为 BTH_SDP_VERSION。
pRecordHandle
SDP 记录的句柄。 对应于 SDP ServiceRecordHandle。 由添加记录操作返回,随后用于删除记录。
fCodService
设备 (COD) 信息的类。 与此 SDP 记录关联的COD_SERVICE_* 类设备位的 32 位字段。 系统将这些位与其他服务记录和系统特征中的 COD 位组合在一起。 当在设备查询期间找到无线电时,将播发本地无线电的生成的设备类。 删除与特定服务位关联的最后一条 SDP 记录时,不再在响应将来的设备查询时报告该服务位。
COD 字段的格式和可能值在 蓝牙规范第 1.2 节的蓝牙分配号码 1.1 部分中定义。 (此资源在某些语言和国家/地区中可能不可用。) Windows 使用的 COD_SERVICE_* 位的相应宏和定义在 Bthdef.h 中定义。 有关设备 (COD) 类的详细信息,请参阅 BTH_DEVICE_INFO。
Reserved[5]
保留。 必须设置为零。
ulRecordLength
pRecord 的大小(以字节为单位)。
pRecord[1]
SDP 记录,由蓝牙规范定义。
注解
使用 BTH_SET_SERVICE 结构使用 WSASetService 函数和 WSAQUERYSET 和 BLOB 结构查询服务和设备时。 必须使用 BTH_SET_SERVICE 成员的以下值。
有关设备类 (COD) 的详细信息,请参阅 www.bluetooth.com 上的蓝牙规范。
成员 | 所需的值 |
---|---|
pSdpVersion | 指向 ULONG 版本的指针,每当 SDP 记录的二进制格式更改时都会更改,从而影响 pRecord 成员的格式。 设置为 客户端的 BTH_SDP_VERSION ,由系统返回。 |
pRecordHandle | SDP 记录的句柄;对应于 SDP ServiceRecordHandle。 由添加记录操作返回,随后用于删除记录。 |
fOptions | 由 BTHNS_SET_FLAGS 定义的属性。 |
ulRecordLength | pRecord 指向的二进制 SDP 记录的长度(以字节为单位)。 |
pRecord | 指向有效 SDP 记录的指针,采用蓝牙规范定义的格式。 |
pRecordHandle 成员必须指向新服务注册为 null 的数据。 对于服务删除, pRecordHandle 必须指向有效的句柄。 pRecord 成员必须包含整个 SD 服务记录,如蓝牙规范中所述。 对于 RFCOMM 协议条目,端口号与 由 getsockname 函数调用返回的端口相同。
蓝牙在 SDP 记录和服务器套接字之间实现一对一关联。 因此,不需要 SERVICE_MULTIPLE 标志。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista、Windows XP SP2 [仅限桌面应用] |
最低受支持的服务器 | 无受支持的版本 |
标头 | ws2bth.h |