次の方法で共有


SDPサービス情報へのアクセス

プロファイル ドライバーがサービス探索プロトコル (SDP) レコードを送信して SDP を使用してサービスをアドバタイズした後、他のデバイスは、レコードを検索するか、参照して検索することで、これらのサービスを検出できます。

SDP レコードを検索するには、クライアント プロファイル ドライバーは最初に次を使用する必要があります IOCTL_BTH_SDP_CONNECT リモート機器のSDPサービスに接続します。

その後、プロファイル ドライバーは次の IOCTL のいずれかを使用して、実際の SDP レコードsearch を実行できます:

  • IOCTL_BTH_SDP_ATTRIBUTE_SEARCH 指定された SDP 属性範囲に入るリモート SDP レコードのすべてのコンポーネントを取得します。

  • IOCTL_BTH_SDP_SERVICE_SEARCH SDP 要求をリモート デバイスに発行し、特定のサービス クラスの SDP レコードへのハンドルを要求します。

  • IOCTL_BTH_SDP_SERVICE_ATTRIBUTE_SEARCH IOCTL_BTH_SDP_ATTRIBUTE_SEARCH と IOCTL_BTH_SDP_SERVICE_ATTRIBUTE_SEARCH を組み合わせて、1 回の操作で使用可能な SDP レコード ストリームを返します。

プロファイル ドライバーは、IOCTL_BTH_SDP_Standard Edition RVICE_Standard Edition ARCH と IOCTL_BTH_SDP_ATTRIBUTE_Standard Edition ARCH を使用して、Bluetooth リンク経由で送信される SDP 交通情報の量を減らし、少数の最大転送ユニット (MTU) を使用して必要な情報を抽出できます。 どちらの問題も大きな懸念事項でない場合は、プロファイル ドライバーが IOCTL_BTH_SDP_Standard Edition RVICE_ATTRIBUTE_Standard Edition ARCH を呼び出す方が便利です。

プロファイルドライバーが取得した後、 ダイナミック 目的のサービスのプロトコル/サービス マルチプレクサー (PSM) を使用すると、リモート サービスに接続できますを使用することで BRB_L2CA_OPEN_CHANNEL BRB.

Note

多くの場合、サービスに固定 PSM がある場合、L2CAP クライアント プロファイル ドライバーは PSM を取得するために SDP を使用する必要はありません。 ただし、L2CAP クライアント プロファイル ドライバーは引き続き SDP を使用して SDP サーバー属性を取得できます。

プロファイルドライバーが検索を完了したら、次を使用する必要があります IOCTL_BTH_SDP_DISCONNECT リモート SDP サーバーとの接続を切断します。