_BRB_PSM structure (bthddi.h)

La structure _BRB_PSM décrit un multiplexeur de protocole/service (PSM) à inscrire ou à désinscrire.

Syntaxe

struct _BRB_PSM {
  BRB_HEADER Hdr;
  USHORT     Psm;
};

Membres

Hdr

Structure BRB_HEADER qui contient des informations sur le BRB actuel.

Psm

Lorsque la structure _BRB_PSM est passée en tant qu’entrée pour un appel BRB BRB_REGISTER_PSM , il s’agit du module PSM que le pilote de profil tente d’inscrire. Si le pilote de profil définit cette valeur sur zéro, le psm est généré dynamiquement. Si le pilote de profil a spécifié zéro sur BRB_REGISTER_PSM entrée, lors de la sortie, ce membre contient le psm qui a été inscrit.

Lorsque la structure _BRB_PSM est passée en tant qu’entrée pour un appel BRB BRB_UNREGISTER_PSM , il s’agit du module PSM que le pilote de profil tente d’annuler l’inscription. Cette valeur doit être un psm actuellement inscrit. Pour plus d’informations sur les valeurs PSM valides, consultez la section Remarques.

Certaines psm sont réservées à Windows :

SDP : 0x01

RFCOMM : 0x03

Contrôle HID : 0x11

Données HID : 0x13

BNEP : 0x0F

Remarques

Pour inscrire un psM, les pilotes de profil doivent générer et envoyer une demande de BRB_REGISTER_PSM .

Une fois qu’un psM a été inscrit, le pilote de profil peut recevoir des notifications de connexion à partir d’appareils distants et peut générer et envoyer BRB_L2CA_OPEN_CHANNEL_RESPONSE demandes d’acceptation des connexions entrantes.

Le pilote de profil peut spécifier un psM particulier ou demander qu’un psM soit généré dynamiquement en spécifiant PSM_INVALID dans le membre Psm . Si le pilote de profil spécifie PSM_INVALID, lors de la sortie, le psm affecté est retourné dans le membre Psm de la structure.

La pile de pilotes Bluetooth enregistre les modules PSM pour les profils suivants : HCRP, HID, PAN, SDP et RFCOMM.

Pour plus d’informations sur les serveurs L2CAP et les modules PSM, consultez Acceptation des Connections L2CAP dans un pilote de profil Bluetooth.

Les pilotes de profil ne peuvent pas inscrire un psM qui a déjà été inscrit par un autre pilote. Si l’on tente de le faire, une erreur de STATUS_ALREADY_COMMITTED est retournée. La demande BRB_REGISTER_PSM n’a aucun effet sur les enregistrements SDP. Après avoir inscrit un PSM, les pilotes peuvent publier le PSM sur SDP en envoyant le IOCTL_BTH_SDP_SUBMIT_RECORD IOCTL.

Pour annuler l’inscription d’un psM précédemment inscrit, les pilotes de profil doivent générer et envoyer une demande de BRB_UNREGISTER_PSM . Les pilotes de profil doivent spécifier un PSM actuellement inscrit. Si un pilote de profil envoie une requête BRB_REGISTER_PSM avec une valeur de zéro dans le membre Psm , la valeur PSM affectée dynamiquement doit être passée dans la demande BRB_UNREGISTER_PSM.

Une demande BRB_UNREGISTER_PSM n’a aucun effet sur les enregistrements SDP qui tentent de se connecter au psM. Les pilotes de profil peuvent supprimer les enregistrements SDP pertinents en envoyant le IOCTL_BTH_SDP_REMOVE_RECORD IOCTL.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Versions :_Supported dans Windows Vista et versions ultérieures.
En-tête bthddi.h (inclure Bthddi.h)

Voir aussi

BRB_HEADER

BRB_L2CA_OPEN_CHANNEL_RESPONSE

BRB_REGISTER_PSM

BRB_UNREGISTER_PSM

IOCTL_BTH_SDP_REMOVE_RECORD

IOCTL_BTH_SDP_SUBMIT_RECORD