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

sizeof(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 をプログラムするための要求も設定する必要があることに注意してください。

要件

要件
Header ntddscsi.h (Ntddscsi.h を含む)

こちらもご覧ください

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

SCSI_REQUEST_BLOCK