次の方法で共有


IOCTL_INTERNAL_BTH_SUBMIT_BRB IOCTL (bthioctl.h)

プロファイル ドライバーでは 、IOCTL_INTERNAL_BTH_SUBMIT_BRB を使用して、Bluetooth 要求ブロック (BRB) を Bluetooth ドライバー スタックに送信します。

メジャー コード

IRP_MJ_INTERNAL_DEVICE_CONTROL

[入力バッファー]

Parameters.Others.Argument1 メンバーは、プロファイル ドライバーが発行する BRB に対応する構造体のインスタンスを指します。 次の一覧では、特定の BRB に対応する構造体について説明します。

Bluetooth 要求ブロック (BRB) 対応する構造体
BRB_HCI_GET_LOCAL_BD_ADDR

_BRB_GET_LOCAL_BD_ADDR

BRB_L2CA_REGISTER_SERVER

_BRB_L2CA_REGISTER_SERVER

BRB_L2CA_UNREGISTER_SERVER _BRB_L2CA_UNREGISTER_SERVER
BRB_L2CA_OPEN_CHANNEL

_BRB_L2CA_OPEN_CHANNEL

BRB_L2CA_OPEN_CHANNEL_RESPONSE

_BRB_L2CA_OPEN_CHANNEL

BRB_L2CA_CLOSE_CHANNEL

_BRB_L2CA_CLOSE_CHANNEL

BRB_L2CA_ACL_TRANSFER

_BRB_L2CA_ACL_TRANSFER

BRB_L2CA_UPDATE_CHANNEL

_BRB_L2CA_UPDATE_CHANNEL

BRB_L2CA_PING

_BRB_L2CA_PING

BRB_REGISTER_PSM

_BRB_PSM

BRB_UNREGISTER_PSM

_BRB_PSM

BRB_SCO_REGISTER_SERVER

_BRB_SCO_REGISTER_SERVER

BRB_SCO_UNREGISTER_SERVER

_BRB_SCO_UNREGISTER_SERVER

BRB_SCO_OPEN_CHANNEL

_BRB_SCO_OPEN_CHANNEL

BRB_SCO_OPEN_CHANNEL_RESPONSE

_BRB_SCO_OPEN_CHANNEL

BRB_SCO_CLOSE_CHANNEL

_BRB_SCO_CLOSE_CHANNEL

BRB_SCO_TRANSFER

_BRB_SCO_TRANSFER

BRB_SCO_GET_CHANNEL_INFO

_BRB_SCO_GET_CHANNEL_INFO

BRB_SCO_GET_SYSTEM_INFO

_BRB_SCO_GET_SYSTEM_INFO

BRB_SCO_FLUSH_CHANNEL

_BRB_SCO_FLUSH_CHANNEL

BRB_ACL_GET_MODE

_BRB_ACL_GET_MODE

BRB_ACL_ENTER_ACTIVE_MODE

_BRB_ACL_ENTER_ACTIVE_MODE

BRB_GET_DEVICE_INTERFACE_STRING _BRB_GET_DEVICE_INTERFACE_STRING

入力バッファーの長さ

構造体の長さ。

出力バッファー

BRB が出力を返す場合、Parameters-Others.Argument1> は入力として渡されたのと同じ BRB を指します。 出力は、関連付けられた BRB 構造体のメンバーまたは BRB 構造体で指定されたバッファーで返されます。

出力バッファーの長さ

構造体の長さ

ステータス ブロック

要求が成功した場合、STATUS_BLOCK構造体の Information メンバーは、送信された Bluetooth 要求ブロックのサイズ (バイト単位) に設定されます。 それ以外の場合、 Information メンバーは 0 に設定されます。

Status メンバーは、次の表のいずれかの値に設定されます。

ステータス値 説明
STATUS_SUCCESS IOCTL が正常に完了しました。
STATUS_INVALID_DEVICE_REQUEST BRB 構造体を介してリモート デバイスに送信された要求が無効でした。
STATUS_INVALID_PARAMETER 1 つ以上の入力パラメーターが無効でした。
STATUS_INVALID_BUFFER_SIZEまたは
STATUS_BUFFER_TOO_SMALL
指定されたバッファーの長さが小さすぎます。
STATUS_NOT_IMPLEMENTED スタックは、BRB を処理するために必要なモジュールを実装していません。
STATUS_NOT_SUPPORTED スタックでは、この BRB はサポートされていません。
STATUS_PENDING BRB が保留中です。

注釈

プロファイル ドライバーでは、BLOB を使用して、ほとんどの入力、出力、接続のタスクを処理します。 これらのタスクには多数の BRB が定義されており、それぞれに対応する特定の構造体が使用されます。 すべての BRB は共通ヘッダーを共有します。このヘッダーには、BRB の型が含まれています。 Bluetooth ドライバー スタックでは、BRB ヘッダーを使用して、BRB の残りの部分を正しく解釈します。 BRB ヘッダーの詳細については、 BRB_HEADER 構造に関するページを参照してください。

プロファイル ドライバーが BRB を使用して Bluetooth ドライバー スタックと通信する方法の詳細については、「 BRB の構築と送信」を参照してください。

これらの BRB は IRQL <= PASSIVE_LEVELで呼び出す必要があります。

要件

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

こちらもご覧ください

BRB_HEADER

BRB_TYPE

BRB の構築と送信