Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Ein L2CAP-Serverprofiltreiber reagiert auf eingehende L2CAP-Verbindungsanforderungen (Logical Link Control and Adaptation Protocol) von Remotegeräten. Beispielsweise würde ein L2CAP-Serverprofiltreiber für einen PDA auf eine eingehende Verbindungsanforderung vom PDA reagieren.
So empfangen Sie eingehende L2CAP-Verbindungsanforderungen
Um eingehende L2CAP-Verbindungsanforderungen voneinem Remotegerätfür einen bestimmten PSM zu empfangen, sollten Profiltreiber zunächst eine BRB_L2CA_REGISTER_SERVER-Anforderungerstellen und senden, wobei NULL im BtAddress-Member und 0 im Psm-Element der _BRB_L2CA_REGISTER_SERVER-Struktur der Anforderung angegeben wird. Profiltreiber müssen beim Senden der BRB_L2CA_REGISTER_SERVER-Anforderung auch eine L2CAP-Rückruffunktion beim Bluetooth-Treiberstapel registrieren. Dadurch kann der Bluetooth-Treiberstapel den Profiltreiber über eingehende L2CAP-Verbindungsanforderungen benachrichtigen.
Dann sollten Profiltreiber eine BRB_REGISTER_PSM-Anforderungerstellen und senden, damit der Bluetooth-Treiberstapel Verbindungen von dem PSM akzeptiert, der von der Anforderung registriert wurde. Andernfalls lehnt der Bluetooth-Treiberstapel alle Verbindungsanforderungen ab, die unbekannte (nicht registrierte) Verbindungsanforderungen aufweisen. Weitere Informationen zu PSMs finden Sie in der _BRB_PSM-Struktur .
Um eingehende L2CAP-Verbindungsanforderungen von einembestimmtenRemotegerät/PSM-Paar zu empfangen, sollten Profiltreiber eine BRB_L2CA_REGISTER_SERVER-Anforderungerstellen und senden, wobei die Adresse des Remotegeräts im BtAddress-Member und PSM im Psm-Member der begleitenden _BRB_L2CA_REGISTER_SERVER-Struktur der Anforderung angegeben wird. Profiltreiber müssen beim Senden der BRB_L2CA_REGISTER_SERVER-Anforderung auch eine L2CAP-Rückruffunktion beim Bluetooth-Treiberstapel registrieren. Dadurch kann der Bluetooth-Treiberstapel den Profiltreiber über eingehende L2CAP-Verbindungsanforderungen benachrichtigen.
Der Profiltreiber sollte eine IOCTL_BTH_SDP_SUBMIT_RECORD ausstellen. Der Profiltreiber kann dann einen SDP-Eintrag registrieren, der den Dienst beschreibt, den der Profiltreiber unterstützt, damit Remotesysteme den neuen Dienst mithilfe von SDP ermitteln können.
Wenn der Bluetooth-Treiberstapel eine eingehende L2CAP-Verbindungsanforderung von einem Remotegerät empfängt, ruft der Bluetooth-Treiberstapel die L2CAP-Rückruffunktion auf , die zuvor vom Profiltreiber registriert wurde. Der Bluetooth-Treiberstapel übergibt den Wert IndicationRemoteConnect an den Parameter Indication der Rückruffunktion.
Um auf eingehende Verbindungsanforderungen zu reagieren, sollten Profiltreiber eine BRB_L2CA_OPEN_CHANNEL_RESPONSE-Anforderungerstellen und senden. Der Serverprofiltreiber verwendet den Wert, der vom Bluetooth-Treiberstapel im Parameter Parameters der Rückruffunktion übergeben wird, um die Verbindungseinstellungen mit dem Remotegerät auszuhandeln. Basierend auf dem Wert des Response-Members der _BRB_L2CA_OPEN_CHANNEL Struktur, die mit dieser Anforderung übergeben wird, akzeptiert oder lehnt der Serverprofiltreiber die Verbindungsanforderung ab.
Wenn der Serverprofiltreiber die Verbindung akzeptiert, kann der Bluetooth-Treiberstapel die L2CAP-Rückruffunktion aufrufen, wie im Rückrufelement der _BRB_L2CA_OPEN_CHANNEL-Struktur angegeben. Der Bluetooth-Treiberstapel verwendet diese Funktion, um den Serverprofiltreiber über alle Änderungen an der L2CAP-Verbindung zu benachrichtigen.
Hinweis
- Ein einzelner Profiltreiber kann sich registrieren, um eingehende L2CAP-Verbindungsanforderungen von mehreren, unterschiedlichen Remotegeräte-/PSM-Paaren zu empfangen, indem er mehrere BRB_L2CA_REGISTER_SERVER Anforderungen erstellt und sendet, um mehrere L2CAP-Server zu registrieren, wobei eindeutige Remotegeräteadresse und PSM-Paare in den BtAddress - und Psm-Mitgliedern der Anforderungen angegeben werden.
- Ein einzelner Profiltreiber kann sich registrieren, um eingehende L2CAP-Verbindungsanforderungen von jedem Remotegerät für ein bestimmtes PSM zu empfangen und eingehende L2CAP-Verbindungsanforderungen von mehreren, unterschiedlichen Remotegerät/PSM-Paaren zu empfangen, indem er sich zuerst registriert, um eingehende L2CAP-Verbindungsanforderungen von einem beliebigen Remotegerät für ein bestimmtes PSM zu empfangen, und dann registriert, um eingehende L2CAP-Verbindungsanforderungen von einem bestimmten Remotegerät/PSM-Paar zu empfangen, solange der jeweilige PSM registriert ist. im ersten Schritt wird nicht erneut registriert.
- Mehrere Profiltreiber können sich nicht registrieren, um eingehende L2CAP-Verbindungsanforderungen von einem Remotegerät für dasselbe PSM zu empfangen. Der Bluetooth-Treiberstapel erlaubt nur einem Profiltreiber, eingehende L2CAP-Verbindungsanforderungen von einem Remotegerät für einen bestimmten PSM zu empfangen.
Nachdem der Profiltreiber eine Verbindungsanforderung akzeptiert hat, kann er andere BRBs verwenden, um Daten über die neu eingerichtete L2CAP-Verbindung zu senden und zu empfangen.
Um Benachrichtigungen über L2CAP-Verbindungsversuche des Remotegeräts zu beenden, sollten Profiltreiber eine BRB_L2CA_UNREGISTER_SERVER-Anforderungerstellen und senden, um die Registrierung eines Servers aufzuheben, wenn der Profiltreiber Benachrichtigungen IRP_MN_REMOVE_DEVICE Plug & Play entfernen.
Weitere Informationen zu Benachrichtigungen und Rückruffunktionen finden Sie unter Unterstützen von Bluetooth-Ereignisbenachrichtigungen.