共用方式為


_BRB_PSM 結構 (bthddi.h)

_BRB_PSM結構描述通訊協定/服務多任務器 (PSM) 來註冊或取消註冊。

語法

struct _BRB_PSM {
  BRB_HEADER Hdr;
  USHORT     Psm;
};

成員

Hdr

包含目前 BRB 相關信息 的BRB_HEADER 結構。

Psm

當_BRB_PSM結構當做 BRB_REGISTER_PSM BRB 呼叫的輸入傳遞時,這是配置檔驅動程式嘗試註冊的 PSM。 如果配置檔驅動程式將此值設定為零,就會動態產生 PSM。 如果配置檔驅動程式在 BRB_REGISTER_PSM 輸入上指定零,則在此成員的輸出中會包含已註冊的 PSM。

當_BRB_PSM結構當做 BRB_UNREGISTER_PSM BRB 呼叫的輸入傳遞時,這是配置檔驅動程式嘗試取消註冊的 PSM。 此值必須是目前註冊的 PSM。 如需有效 PSM 值的詳細資訊,請參閱一節。

某些 PSM 會保留供 Windows 使用:

SDP:0x01

RFCOMM:0x03

HID 控制件:0x11

HID 數據:0x13

BNEP:0x0F

備註

若要註冊 PSM,配置檔驅動程式應該建置並傳送BRB_REGISTER_PSM要求。

註冊 PSM 之後,配置檔驅動程式可以從遠端裝置接收連線通知,並可建置和傳送 BRB_L2CA_OPEN_CHANNEL_RESPONSE 接受連入連線的要求。

配置文件驅動程式可以指定特定的 PSM,也可以藉由在 Psm 成員中指定PSM_INVALID來要求動態產生 PSM 。 如果配置檔驅動程式指定PSM_INVALID,在輸出時,指派的 PSM 將會在結構的 Psm 成員中傳回。

藍牙驅動程式堆疊會為下列配置檔註冊 PSM:HCRP、HID、PAN、SDP 和 RFCOMM。

如需 L2CAP 伺服器和 PSM 的詳細資訊,請參閱在藍牙配置檔驅動程式中接受 L2CAP Connections

配置文件驅動程式無法註冊已由另一個驅動程式註冊的 PSM。 如果嘗試這樣做,將會傳回STATUS_ALREADY_COMMITTED錯誤。 BRB_REGISTER_PSM要求不會影響 SDP 記錄。 註冊 PSM 之後,驅動程式可以藉由傳送 來透過 SDP 公告 PSM IOCTL_BTH_SDP_SUBMIT_RECORD IOCTL。

若要取消註冊先前註冊的 PSM,配置檔驅動程式應該建置並傳送BRB_UNREGISTER_PSM要求。 配置檔驅動程序必須指定目前註冊的 PSM。 如果配置檔驅動程式傳送 在 Psm 成員中值為零的BRB_REGISTER_PSM要求,則動態指派的 PSM 值應該在BRB_UNREGISTER_PSM要求中傳遞。

BRB_UNREGISTER_PSM要求不會影響嘗試連線到 PSM 的 SDP 記錄。 配置文件驅動程式可以藉由傳送 來移除相關的 SDP 記錄 IOCTL_BTH_SDP_REMOVE_RECORD IOCTL。

規格需求

需求
最低支援的用戶端 Windows Vista 和更新版本中的版本:_Supported。
標頭 bthddi.h (包含 Bthddi.h)

另請參閱

BRB_HEADER

BRB_L2CA_OPEN_CHANNEL_RESPONSE

BRB_REGISTER_PSM

BRB_UNREGISTER_PSM

IOCTL_BTH_SDP_REMOVE_RECORD

IOCTL_BTH_SDP_SUBMIT_RECORD