_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

要傳遞至 ObReferenceObjectObDereferenceObject 函式的物件指標,以維護 的參考計數。 只要驅動程式堆疊可以呼叫 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)

另請參閱

BRB_HEADER

BRB_SCO_REGISTER_SERVER

BRB_SCO_UNREGISTER_SERVER

ObDereferenceObject

ObReferenceObject

SCO 回呼函式