共用方式為


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結構的 mibeNumattributeId 成員來尋找要轉換的字串。

[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 的長度,以字元為單位。

輸出時,如果傳回錯誤,或寫入 pszString 的字元數,則包含必要的字元數,包括 NULL

傳回值

成功完成時傳回ERROR_SUCCESS; pszString 參數包含已轉換的字串。 在失敗時傳回錯誤碼。 下表列出常見的錯誤。

傳回碼 Description
ERROR_MORE_DATA
pszString 參數為 NULL 或太小而無法包含已轉換的字串;pcchStringLength 參數包含所需的長度,以字元為單位。
ERROR_INVALID_DATA
無法執行轉換作業。
ERROR_NO_SYSTEM_RESOURCES
系統無法在內部配置記憶體來執行轉換。
ERROR_INVALID_PARAMETER
其中一個必要的指標是 NULLpRecordStream 參數不是有效的 SDP 數據流、 pRecordStream 不是正確格式化的記錄,或要求的屬性加上位移不是字符串。

規格需求

需求
最低支援的用戶端 Windows Vista、Windows XP SP2 [僅限傳統型應用程式]
最低支援的伺服器 都不支援
目標平台 Windows
標頭 bluetoothapis.h (包括 Bthsdpdef.h、BluetoothAPIs.h)
程式庫 Bthprops.lib
Dll bthprops.cpl

另請參閱

BluetoothSdpEnumAttributes

BluetoothSdpGetAttributeValue

BluetoothSdpGetContainerElementData

BluetoothSdpGetElementData

SDP_ELEMENT_DATA

SDP_STRING_TYPE_DATA