Erstellen einer SCO-Clientverbindung mit einem Remotegerät
Ein SCO-Clientprofiltreiber ist ein Profiltreiber, der eine synchrone Connection-Oriented verbindung (SCO) mit einem Remotegerät anfordert. Wenn das Gerät die Verbindung akzeptiert, wird der SCO-Clientprofiltreiber über alle Änderungen an der Verbindung benachrichtigt. Beispielsweise kann ein SCO-Clientprofiltreiber eine Verbindung mit einem Remote-Headset anfordern, und nachdem das Headset die Verbindungsanforderung akzeptiert hat, kann der Bluetooth-Treiberstapel den Profiltreiber benachrichtigen, wenn das Headset ausgeschaltet oder entfernt wird.
Da SCO-Verbindungen Punkt-zu-Punkt-Verbindungen zwischen zwei Bluetooth-Geräten sind, benötigt ein SCO-Clientprofiltreiber nur die Bluetooth-Adresse des Remotegeräts, mit dem eine Verbindung hergestellt werden soll.
Um eine SCO-Verbindung mit einem Remotegerät zu initiieren, sollten Profiltreiber eine _BRB_SCO_OPEN_CHANNEL-Anforderungerstellen und senden.
Wenn das Remotegerät die SCO-Verbindungsanforderung des Profiltreibers akzeptiert, kann der Profiltreiber dann zusätzliche BRB-Befehle über den neu verbundenen Kanal ausführen, indem IOCTL_INTERNAL_BTH_SUBMIT_BRB verwendet wird, um einen Bluetooth-Anforderungsblock (BRB) an den Bluetooth-Treiberstapel zu übermitteln, einschließlich:
Hinweis
Profiltreiber sollten während der Initialisierung eine BRB_SCO_GET_SYSTEM_INFO-Anforderungerstellen und senden, um zu bestimmen, ob die zugrunde liegende Hardware SCO unterstützt und wenn ja, welche globalen SCO-Einstellungen es sind.
Wenn der Profiltreiber die SCO-Verbindung mit dem Remotegerät nicht mehr benötigt, sollte er eine _BRB_SCO_CLOSE_CHANNEL-Anforderungerstellen und senden.