次の方法で共有


_BRB_SCO_REGISTER_SERVER 構造体 (bthddi.h)

プロファイル ドライバーは、_BRB_SCO_REGISTER_SERVER構造を使用して、リモート Bluetooth デバイスから SCO 接続を受信できるサーバーとして自身を登録します。

構文

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

メンバー

Hdr

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

BtAddress

通知を受信するリモート Bluetooth デバイスのアドレス。

Reserved

将来利用するために予約されています。 使用しないでください。

IndicationFlags

IndicationCallback メンバーで指定されたコールバック関数を呼び出すタイミングを示すフラグ。 次のフラグが定義されています。

フラグ 説明
SCO_INDICATION_SCO_REQUEST 受信 SCO 接続がある場合は、プロファイル ドライバーに通知します。
SCO_INDICATION_ESCO_REQUEST 受信 eSCO 接続がある場合は、プロファイル ドライバーに通知します。

IndicationCallback

プロファイル ドライバーによって実装される SCO コールバック関数。Bluetooth ドライバー スタックが呼び出して、受信 SCO 接続についてプロファイル ドライバーに通知する必要があります。

IndicationCallbackContext

IndicationCallback メンバーで定義されている関数に渡されるコンテキスト。

ReferenceObject

参照カウントを維持するために ObReferenceObject 関数と ObDereferenceObject 関数に渡すオブジェクトへのポインター。 プロファイル ドライバーは、ドライバー スタックが IndicationCallback メンバーで指定されたコールバック関数を呼び出すことができる限り、Bluetooth ドライバー スタックがオブジェクトの数を増やすように、このオブジェクトを提供する必要があります。 プロファイル ドライバーが をビルドして送信 すると、Bluetooth ドライバー スタックによってオブジェクトの参照カウントが減少します。 BRB_SCO_UNREGISTER_SERVER 要求。

ServerHandle

正常に返された場合は、SCO サーバーへのハンドル。 プロファイル ドライバーがリモート接続の指示を受け取らなくなった場合は、このハンドルを に渡す必要があります BRB_SCO_UNREGISTER_SERVER

注釈

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

成功した場合、Bluetooth ドライバー スタックは、リモート デバイスがプロファイル ドライバーへの SCO 接続を作成しようとしたときに、プロファイル ドライバーに通知できます。

プロファイル ドライバー自体が登録されると、Bluetooth ドライバー スタックは、プロファイル ドライバーが実装し、IndicationCallback メンバーで指定する SCO コールバック関数を呼び出すことによって、リモート デバイスが接続を試みたときに通知できます。

プロファイル ドライバーは、接続試行の通知を受け取ると、 を ビルドして送信 する必要があります。 BRB_SCO_OPEN_CHANNEL_RESPONSE 接続の試行を受け入れるか拒否するかを要求します。 SCO 接続試行の受け入れまたは拒否の詳細については、 _BRB_SCO_OPEN_CHANNEL 構造に関するページを参照してください。

接続が確立されると、プロファイル ドライバーは他の BRB を発行してリモート デバイスと通信できます。

リモート接続通知の受信を停止するには、プロファイル ドライバーで を ビルドして送信 する必要があります。 BRB_SCO_UNREGISTER_SERVER 要求。

要件

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

こちらもご覧ください

BRB_HEADER

BRB_SCO_REGISTER_SERVER

BRB_SCO_UNREGISTER_SERVER

ObDereferenceObject

ObReferenceObject

SCO コールバック関数