_BRB_PSM 構造体 (bthddi.h)

_BRB_PSM構造体は、登録または登録解除するプロトコル/サービス マルチプレクサー (PSM) を記述します。

構文

struct _BRB_PSM {
  BRB_HEADER Hdr;
  USHORT     Psm;
};

メンバー

Hdr

現在の BRB に関する情報を含む BRB_HEADER 構造体。

Psm

_BRB_PSM構造体が BRB_REGISTER_PSM BRB 呼び出しの入力として渡されると、プロファイル ドライバーが登録を試みる PSM になります。 プロファイル ドライバーがこの値を 0 に設定すると、PSM が動的に生成されます。 プロファイル ドライバーが入力 でゼロBRB_REGISTER_PSM 指定した場合、出力時に、このメンバーには登録された PSM が含まれます。

_BRB_PSM構造体が BRB_UNREGISTER_PSM BRB 呼び出しの入力として渡されると、プロファイル ドライバーが登録解除を試みる PSM になります。 この値は、現在登録されている PSM である必要があります。 有効な PSM 値の詳細については、「解説」セクションを参照してください。

一部の PSM は、Windows で使用するために予約されています。

SDP: 0x01

RFCOMM: 0x03

HID コントロール: 0x11

HID データ: 0x13

BNEP: 0x0F

注釈

PSM を登録するには、プロファイル ドライバーでBRB_REGISTER_PSM要求をビルドして送信する必要があります。

PSM が登録されると、プロファイル ドライバーはリモート デバイスから接続通知を受信し、ビルドして送信できます受信接続を受け入れる要求をBRB_L2CA_OPEN_CHANNEL_RESPONSEします。

プロファイル ドライバーは、特定の PSM を指定するか、Psm メンバーで PSM_INVALIDを指定することによって PSM を動的に生成することを要求できます。 プロファイル ドライバーがPSM_INVALIDを指定した場合、出力時に、割り当てられた PSM が 構造体の Psm メンバーに返されます。

Bluetooth ドライバー スタックは、HCRP、HID、PAN、SDP、RFCOMM の各プロファイルの PSM を登録します。

L2CAP サーバーと PSM の詳細については、「Bluetooth プロファイル ドライバーでの L2CAP Connectionsの受け入れ」を参照してください。

プロファイル ドライバーは、別のドライバーによって既に登録されている PSM を登録できません。 これを試みると、STATUS_ALREADY_COMMITTED エラーが返されます。 BRB_REGISTER_PSM要求は SDP レコードには影響しません。 PSM を登録した後、ドライバーは SDP 経由で PSM をアドバタイズできます。 IOCTL_BTH_SDP_SUBMIT_RECORD Ioctl。

以前に登録した PSM の登録を解除するには、プロファイル ドライバーでBRB_UNREGISTER_PSM要求をビルドして送信する必要があります。 プロファイル ドライバーでは、現在登録されている PSM を指定する必要があります。 プロファイル ドライバーが Psm メンバーの値が 0 のBRB_REGISTER_PSM要求を送信する場合は、動的に割り当てられた PSM 値をBRB_UNREGISTER_PSM要求で渡す必要があります。

BRB_UNREGISTER_PSM要求は、PSM への接続を試みる SDP レコードには影響しません。 プロファイル ドライバーは、関連する SDP レコードを削除できます。 IOCTL_BTH_SDP_REMOVE_RECORD Ioctl。

要件

要件
サポートされている最小のクライアント バージョン:Windows Vista 以降の_Supported。
Header bthddi.h (Bthddi.h を含む)

こちらもご覧ください

BRB_HEADER

BRB_L2CA_OPEN_CHANNEL_RESPONSE

BRB_REGISTER_PSM

BRB_UNREGISTER_PSM

IOCTL_BTH_SDP_REMOVE_RECORD

IOCTL_BTH_SDP_SUBMIT_RECORD