次の方法で共有


IOCTL_BTHX_WRITE_HCI IOCTL (bthxddi.h)

IOCTL_BTHX_WRITE_HCIは、Bluetooth ACL データとコマンドをトランスポート層に書き込む場合に使用されます。

メジャー コード

IRP_MJ_DEVICE_CONTROL

[入力バッファー]

プロファイル ドライバーでは、KMDF とその WdfRequestRetrieveInputMemory メソッドを使用して、入力パラメーターを取得する必要があります。 たとえば、入力バッファーを取得するには、次のようにします。

Status = WdfRequestRetrieveInputMemory(_Request, &ReqInMemory);

バッファーは、書き込みの種類と書き込みに関連付けられているデータを指定する BTHX_HCI_READ_WRITE_CONTEXT 構造体を記述します。

詳細については、WDK Bluetooth のサンプルを参照してください。

入力バッファーの長さ

バッファーの長さは、 BTHX_HCI_READ_WRITE_CONTEXT 構造体のサイズです。

出力バッファー

プロファイル ドライバーでは、KMDF とその WdfRequestRetrieveOutputMemory メソッドを使用して、入力パラメーターを取得する必要があります。 たとえば、出力バッファーを取得するには、次のようにします。

Status = WdfRequestRetrieveOutputMemory(_Request, &ReqOutMemory);

バッファーは、 BTHX_HCI_READ_WRITE_CONTEXT 構造体で指定された入力データに対して書き込まれたバイト数の ULONG を記述します。

詳細については、WDK Bluetooth のサンプルを参照してください。

出力バッファーの長さ

バッファーの長さは ULONG のサイズです。

ステータス ブロック

要求が成功した場合、STATUS_BLOCK構造体の Information メンバーは Output Parameter のバイト数に設定されます。

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

ステータス値 説明
STATUS_SUCCESS IOCTL が正常に完了しました。

注釈

Bluetooth スタックは、HCI ACL データと HCI コマンドをコントローラーに書き込むIOCTL_BTHX_WRITE_HCIを送信します。

入力バッファーは、 DataLen メンバーが Data メンバー内のバイト数を指定するBTHX_HCI_READ_WRITE_CONTEXT 構造体を指 します。 Type メンバーは、パケットがコマンド パケットか ACL データ パケットかに基づいて設定されます。

要件

要件
サポートされている最小のクライアント Windows 8 以降でサポートされています。
Header bthxddi.h
IRQL <= DISPATCH_LEVEL