bluetoothSdpGetString 函数 (bluetoothapis.h)
BluetoothSdpGetString 函数将 SDP 记录中嵌入的原始字符串转换为 Unicode 字符串。
语法
DWORD BluetoothSdpGetString(
[in] LPBYTE pRecordStream,
[in] ULONG cbRecordLength,
[in] const PSDP_STRING_TYPE_DATA pStringData,
[in] USHORT usStringOffset,
[out] PWSTR pszString,
[in, out] PULONG pcchStringLength
);
参数
[in] pRecordStream
指向格式化为单个 SDP 记录的有效记录流的指针。
[in] cbRecordLength
pRecordStream 的长度(以字节为单位)。
[in] pStringData
设置为 NULL 时,调用线程区域设置用于在 SDP 记录中搜索匹配的字符串。 如果不是 NULL,则使用 SDP_STRING_TYPE_DATA 结构的 mibeNum 和 attributeId 成员来查找要转换的字符串。
[in] usStringOffset
要转换的 SDP 字符串类型偏移量。 usStringOffset 将添加到字符串的基属性标识符。 SDP 规范定义的偏移量为:STRING_NAME_OFFSET、STRING_DESCRIPTION_OFFSET和STRING_PROVIDER_NAME_OFFSET。 可以在 bthdef.h 头文件中找到这些偏移量。
[out] pszString
如果不是 NULL,则包含输出中转换后的字符串。 如果设置为 NULL, 则 pcchStringLength 参数将填充所需的字符数(而不是字节数)以检索转换后的字符串。
[in, out] pcchStringLength
输入时,如果 pszString 不是 NULL,则包含 pszString 的长度(以字符为单位)。
输出时,包含所需的字符数,包括返回错误时为 NULL ,或写入 pszString 的字符数,包括 NULL。
返回值
成功完成后返回ERROR_SUCCESS; pszString 参数包含转换后的字符串。 失败时返回错误代码。 下表列出了常见错误。
返回代码 | 说明 |
---|---|
|
pszString 参数为 NULL 或太小,无法包含转换后的字符串;pcchStringLength 参数包含所需的长度(以字符为单位)。 |
|
无法执行转换。 |
|
系统无法在内部分配内存来执行转换。 |
|
所需的指针之一为 NULL,pRecordStream 参数不是有效的 SDP 流,pRecordStream 不是格式正确的记录,或者请求的属性加偏移量不是字符串。 |
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista、Windows XP 和 SP2 [仅限桌面应用] |
最低受支持的服务器 | 无受支持的版本 |
目标平台 | Windows |
标头 | bluetoothapis.h (包括 Bthsdpdef.h、BluetoothAPIs.h) |
Library | Bthprops.lib |
DLL | bthprops.cpl |