_BRB_SCO_REGISTER_SERVER-Struktur (bthddi.h)

Ein Profiltreiber verwendet die _BRB_SCO_REGISTER_SERVER-Struktur, um sich selbst als Server zu registrieren, der SCO-Verbindungen von Bluetooth-Remotegeräten empfangen kann.

Syntax

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;
};

Member

Hdr

Eine BRB_HEADER-Struktur , die Informationen zum aktuellen BRB enthält.

BtAddress

Die Adresse des Bluetooth-Remotegeräts, für das Benachrichtigungen empfangen werden sollen.

Reserved

Für die zukünftige Verwendung reserviert. Nicht verwenden.

IndicationFlags

Ein Flag, das angibt, wann die im IndicationCallback-Member angegebene Rückruffunktion aufgerufen werden soll. Die folgenden Flags sind definiert.

Flag Beschreibung
SCO_INDICATION_SCO_REQUEST Benachrichtigen Sie den Profiltreiber, wenn eingehende SCO-Verbindungen vorhanden sind.
SCO_INDICATION_ESCO_REQUEST Benachrichtigen Sie den Profiltreiber, wenn eingehende eSCO-Verbindungen vorhanden sind.

IndicationCallback

Eine vom Profiltreiber implementierte SCO-Rückruffunktion, die der Bluetooth-Treiberstapel aufrufen soll, um den Profiltreiber über eingehende SCO-Verbindungen zu benachrichtigen.

IndicationCallbackContext

Der Kontext, der an die Funktion übergeben wird, die im IndicationCallback-Member definiert ist.

ReferenceObject

Ein Zeiger auf ein Objekt, das an die Funktionen ObReferenceObject und ObDereferenceObject übergeben werden soll, um die Verweisanzahl von beizubehalten. Profiltreiber sollten dieses Objekt so bereitstellen, dass der Bluetooth-Treiberstapel die Anzahl des Objekts erhöhen kann, solange der Treiberstapel die im IndicationCallback-Member angegebene Rückruffunktion aufrufen kann. Der Bluetooth-Treiberstapel verringert die Referenzanzahl des Objekts, wenn der Profiltreiber eine erstellt und sendet . BRB_SCO_UNREGISTER_SERVER Anforderung.

ServerHandle

Handle an den SCO-Server, wenn erfolgreich zurückgegeben. Wenn der Profiltreiber keine Remoteverbindungsanzeigen mehr erhalten soll, sollte er dieses Handle an übergeben. BRB_SCO_UNREGISTER_SERVER.

Hinweise

Um sich selbst als SCO-Server zu registrieren, muss ein Profiltreiber eine BRB_SCO_REGISTER_SERVER-Anforderungerstellen und senden.

Bei erfolgreicher Ausführung kann der Bluetooth-Treiberstapel den Profiltreiber benachrichtigen, wenn Remotegeräte versuchen, eine SCO-Verbindung mit dem Profiltreiber herzustellen.

Nachdem sich der Profiltreiber registriert hat, kann der Bluetooth-Treiberstapel ihn benachrichtigen, wenn ein Remotegerät versucht, eine Verbindung mit dem Treiber herzustellen, indem er die SCO-Rückruffunktion aufruft, die der Profiltreiber implementiert und im IndicationCallback-Member angibt.

Wenn der Profiltreiber eine Benachrichtigung über einen Verbindungsversuch empfängt, sollte er einen erstellen und senden . BRB_SCO_OPEN_CHANNEL_RESPONSE Anforderung, den Verbindungsversuch entweder zu akzeptieren oder abzulehnen. Weitere Informationen zum Akzeptieren oder Ablehnen von SCO-Verbindungsversuchen finden Sie in der _BRB_SCO_OPEN_CHANNEL-Struktur .

Nachdem eine Verbindung hergestellt wurde, kann der Profiltreiber andere BRBs für die Kommunikation mit dem Remotegerät ausgeben.

Um den Empfang von Remoteverbindungsbenachrichtigungen zu beenden, sollte ein Profiltreiber einen erstellen und senden . BRB_SCO_UNREGISTER_SERVER Anforderung.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Versionen:_Supported in Windows Vista und höher.
Kopfzeile bthddi.h (include Bthddi.h)

Weitere Informationen

BRB_HEADER

BRB_SCO_REGISTER_SERVER

BRB_SCO_UNREGISTER_SERVER

ObDereferenceObject

ObReferenceObject

SCO-Rückruffunktion