_BRB_L2CA_REGISTER_SERVER結構 (bthddi.h)
配置文件驅動程式會使用 _BRB_L2CA_REGISTER_SERVER 結構,將本身註冊為能夠從遠端藍牙裝置接收 L2CAP 連線的伺服器。
語法
struct _BRB_L2CA_REGISTER_SERVER {
BRB_HEADER Hdr;
BTH_ADDR BtAddress;
USHORT PSM;
ULONG IndicationFlags;
PFNBTHPORT_INDICATION_CALLBACK IndicationCallback;
PVOID IndicationCallbackContext;
PVOID ReferenceObject;
OUT L2CAP_SERVER_HANDLE ServerHandle;
};
成員
Hdr
包含目前 BRB 相關信息 的BRB_HEADER 結構。
BtAddress
要接收通知的遠端藍牙裝置位址。 指定 BTH_ADDR_NULL 以接收任何連入連線的通知。
PSM
接受連線要求的通訊協定/服務多任務器 (PSM) 。
IndicationFlags
選擇性旗標或旗標組合,指出配置檔驅動程式是否除了連線通知之外,還會接受配對通知。 下表列出可能的旗標設定。
旗標 | 描述 |
---|---|
INDICATION_PAIR_DEVICE | 配置檔驅動程式會在裝置配對時接受通知。 |
INDICATION_UNPAIR_DEVICE | 配置文件驅動程式會在裝置未配對時接受通知。 |
INDICATION_UNPERSONALIZE_DEVICE | 配置文件驅動程式會在裝置未個人化時接受通知。 |
IndicationCallback
由配置檔驅動程序實作的 L2CAP 回呼函式,藍牙驅動程式堆疊應該呼叫 以通知配置檔驅動程式有關傳入 L2CAP 連線。
IndicationCallbackContext
要傳遞至 IndicationCallback 成員中所指定回呼函式的內容。
ReferenceObject
要傳遞至 ObReferenceObject 和 ObDereferenceObject 函式以維護參考計數的物件指標。 只要驅動程式堆疊可以呼叫 IndicationCallback 成員中指定的回呼函式,配置檔驅動程式應該會以這樣的方式提供這個物件,讓藍牙驅動程式堆疊可以增加物件的計數。 當配置檔驅動程式 建置並傳送 時,藍牙驅動程式堆疊將會減少對象的參考計數 BRB_L2CA_UNREGISTER_SERVER 要求。
ServerHandle
如果成功傳回,則為 L2CAP 伺服器的句柄。 當配置檔驅動程式不應該再收到遠端連線指示時,它應該將此句柄傳遞至 BRB_L2CA_UNREGISTER_SERVER。
備註
若要將本身註冊為 L2CAP 伺服器,配置檔驅動程式應該建置並傳送 BRB_L2CA_REGISTER_SERVER 要求。
配置文件驅動程式註冊本身之後,它應該接著建置並傳送BRB_REGISTER_PSM要求,讓藍牙驅動程式堆疊接受來自 PSM 的連線。
如果成功,當遠端裝置嘗試在特定 PSM 上建立配置檔驅動程式的 L2CAP 連線時,藍牙驅動程式堆疊就會通知配置檔驅動程式。
配置文件驅動程式可以指定零 _BRB_L2CA_REGISTER_SERVER 結構的 Psm 成員,這表示未指定 PSM,而且配置檔驅動程式隨後會發出 BRB_REGISTER_PSM BRB 來取得動態 PSM 來註冊連線通知。 如需 PSM 的詳細資訊,請參閱 _BRB_PSM。
在設定檔驅動程式自行註冊之後,藍牙驅動程式堆疊可以在遠端裝置嘗試連線到它時通知它,方法是呼叫配置檔驅動程序實作的 L2CAP 回調函 式,並在 IndicationCallback 成員中指定 。
如需 L2CAP 伺服器和 PSM 的詳細資訊,請參閱在藍牙配置檔驅動程式中接受 L2CAP Connections。
當配置檔驅動程式收到連線嘗試的通知時,它應該建置並傳送 BRB_L2CA_OPEN_CHANNEL_RESPONSE BRB 接受或拒絕連線嘗試。 如需接受或拒絕 L2CAP 連線嘗試的詳細資訊,請參閱 _BRB_L2CA_OPEN_CHANNEL 結構。
建立連線之後,配置檔驅動程式可以發出其他 BRB 來與遠端裝置通訊。
若要停止接收遠端連線通知,配置檔驅動程式應該建置並傳送 BRB_L2CA_UNREGISTER_SERVER 要求。
雖然此程式可讓配置檔驅動程式接受連入連線要求,但不會使用 SDP 自動公告服務。 若要使用 SDP 公告服務,配置檔驅動程式必須使用 SDP API 提交 SDP 記錄。 如需使用 SDP 廣告服務的詳細資訊,請參閱 與 SDP 伺服器通訊。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista 和更新版本中的版本:_Supported。 |
標頭 | bthddi.h (包含 Bthddi.h) |
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應