次の方法で共有


IOCTL_SCSI_MINIPORT IOCTL (ntddscsi.h)

ホスト バス アダプター固有 (HBA) ミニポート ドライバーに特別な制御関数を送信します。 結果は、この要求が転送される特定のミニポート ドライバーによって異なります。 呼び出し元が 0 以外の Lengthを指定する場合、入力バッファーまたは出力バッファーは少なくとも (sizeof(SRB_IO_CONTROL) + DataBufferLength) である必要があります。

HBA を開く方法として、SetupDiXxx API を使用して、実行中のすべての ScsiAdapter クラス デバイスを取得します。 それぞれのデバイス インスタンス名のプロパティを取得し、HBA を直接開きます。 SCSI%d (\\.\Scsi0:など) はシンボリック リンクであり、すべてのストレージ ドライバーがリンクを作成するわけではありません。

手記

SCSI ポート ドライバーと SCSI ミニポート ドライバー モデルは、今後変更または使用できない可能性があります。 代わりに、Storport ドライバー を使用し、Storport ミニポート ドライバー モデル することをお勧めします。

メジャー コード

IRP_MJ_DEVICE_CONTROL

入力バッファー

Irp->AssociatedIrp.SystemBuffer のバッファーには、SRB_IO_CONTROL 構造体が含まれている必要があります。

入力バッファーの長さ

Parameters.DeviceIoControl.InputBufferLength は、バッファーのサイズ (バイト単位) を示します。これは、Length フィールドが 0 以外の場合は、データの追加のストレージを持つ、少なくとも sizeof(SRB_IO_CONTROL) である必要があります。

出力バッファー

更新された SRB_IO_CONTROL 構造体は、Irp->AssociatedIrp.SystemBuffer バッファーに返されます。

出力バッファーの長さ

SRB_IO_CONTROL 構造体の長さ。

入力/出力バッファー

何一つ。

入力/出力バッファーの長さ

適用されません。

状態ブロック

情報 フィールドには、出力バッファーで返されたバイト数が含まれます。 状態 フィールドは、操作の結果を示します。

必要条件

要件 価値
ヘッダー ntddscsi.h (Ntddscsi.h を含む)

関連項目

SRB_IO_CONTROL