次の方法で共有


SRB_IO_CONTROL構造体 (ntddscsi.h)

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

構文

typedef struct _SRB_IO_CONTROL {
  ULONG HeaderLength;
  UCHAR Signature[8];
  ULONG Timeout;
  ULONG ControlCode;
  ULONG ReturnCode;
  ULONG Length;
} SRB_IO_CONTROL, *PSRB_IO_CONTROL;

メンバーズ

HeaderLength

(SRB_IO_CONTROL) のサイズです。

Signature[8]

この要求のアプリケーション専用のターゲット HBA を識別します。 この署名は、ベンダー間の ControlCode 競合を防ぐために使用されます。 ASCII 文字の文字列である必要があります。 ミニポート ドライバーが入力 署名 値を認識しない場合は、SRB_STATUS_INVALID_REQUESTの状態で要求を完了する必要があります。

Timeout

OS 固有のポート ドライバーがタイムアウトと見なす前に要求を実行できる間隔を秒単位で示します。ミニポート ドライバーは、特にプライベートに定義されたSRB_IO_CONTROLについて、SRB_IO_CONTROLのタイムアウトを適用する必要があります。

ControlCode

実行する操作を示します。 システム定義の操作はありません。 値は、Win32 DeviceIoControl 関数を呼び出すことによってアプリケーションが要求を行うことができるプライベート I/O コントロール コードのセットとしてドライバーによって定義する必要があります。 デバイス制御要求のプライベート I/O 制御コードの定義の詳細については、「I/O 制御コードの使用」を参照してください。

ReturnCode

要求するアプリケーションによる検査の状態コードを返します。

Length

直後のデータ領域のサイズをバイト単位で示します。 この領域は、特定の操作に対して入力領域と出力領域に分割できます。 入力要求の場合、DataBuffer の内容は、DataTransferLength の戻り値まで要求元にコピーされます。

備考

この構造は、アプリケーション専用 HBA に直接要求を送信するためにアプリケーションによって使用されます。 このようなアプリケーションでは、専用 HBA をプログラムする要求も設定する必要があることに注意してください。

必要条件

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

関連項目

SCSI ポート I/O 制御コード

SCSI_REQUEST_BLOCK