_BRB_SCO_REGISTER_SERVER 結構 (bthddi.h)
配置文件驅動程式會使用 _BRB_SCO_REGISTER_SERVER 結構,將本身註冊為可從遠端藍牙裝置接收 SCO 連線的伺服器。
語法
struct _BRB_SCO_REGISTER_SERVER {
BRB_HEADER Hdr;
BTH_ADDR BtAddress;
ULONG Reserved;
ULONG IndicationFlags;
PFNSCO_INDICATION_CALLBACK IndicationCallback;
PVOID IndicationCallbackContext;
PVOID ReferenceObject;
SCO_SERVER_HANDLE ServerHandle;
};
成員
Hdr
包含目前 BRB 相關信息 的BRB_HEADER 結構。
BtAddress
要接收通知的遠端藍牙裝置位址。
Reserved
保留供未來使用。 請勿使用。
IndicationFlags
旗標,指出何時應該呼叫 IndicationCallback 成員中指定的回呼函式。 定義下列旗標。
國旗 | 描述 |
SCO_INDICATION_SCO_REQUEST | 如果有任何傳入的 SCO 連線,請通知設定檔驅動程式。 |
SCO_INDICATION_ESCO_REQUEST | 如果有任何傳入的 eSCO 連線,請通知配置檔驅動程式。 |
IndicationCallback
配置文件驅動程式所實作 的 SCO 回呼函式,藍牙驅動程式堆疊應該呼叫 以通知配置檔驅動程式有關傳入的 SCO 連線。
IndicationCallbackContext
傳遞至 指示Callback 成員中定義之函式的內容。
ReferenceObject
要傳遞至 ObReferenceObject 和 ObDereferenceObject 函式的物件指標,以維護 的參考計數。 只要驅動程式堆疊可以呼叫 IndicationCallback 成員中指定的回呼函式,配置檔驅動程式應該會以這種方式提供這個物件,讓藍牙驅動程式堆疊可以增加物件的計數。 當配置檔驅動程式 建置並傳送 時,藍牙驅動程式堆疊將會減少對象的參考計數 BRB_SCO_UNREGISTER_SERVER 要求。
ServerHandle
如果成功傳回,請處理至 SCO 伺服器。 當配置檔驅動程式不應該再收到遠端連線指示時,應該將此句柄傳遞至 BRB_SCO_UNREGISTER_SERVER。
備註
若要將本身註冊為 SCO 伺服器,配置檔驅動程式應該建置並傳送BRB_SCO_REGISTER_SERVER要求。
如果成功,當遠端裝置嘗試建立配置檔驅動程式與配置檔驅動程式的 SCO 連線時,藍牙驅動程式堆疊就會通知配置檔驅動程式。
設定檔案驅動程式註冊本身之後,藍牙驅動程式堆疊可以在遠端裝置嘗試連線到它時通知它,方法是呼叫設定檔驅動程式實作的 SCO 回呼函 式,並在 IndicationCallback 成員中指定 。
當配置檔驅動程式收到連線嘗試的通知時,應該建置並傳送 BRB_SCO_OPEN_CHANNEL_RESPONSE 要求接受或拒絕連線嘗試。 如需接受或拒絕 SCO 連線嘗試的詳細資訊,請參閱 _BRB_SCO_OPEN_CHANNEL 結構。
建立連線之後,配置檔驅動程式可以發出其他 BRB 來與遠端裝置通訊。
若要停止接收遠端連線通知,配置檔驅動程式應該建置並傳送 BRB_SCO_UNREGISTER_SERVER 要求。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista 和更新版本中的版本:_Supported。 |
標頭 | bthddi.h (包含 Bthddi.h) |
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應