IOCTL_SCSISCAN_SET_TIMEOUT IOCTL (scsiscan.h)
IOCTL_SCSISCAN_SET_TIMEOUT コントロール コードは、デバイスにアクセスするときに SCSI バスのカーネル モード静止イメージ ドライバーで使用されるタイムアウト値を変更します。
メジャー コード
入力バッファー
タイムアウト値を含む場所 (5 分の 1)。
入力バッファーの長さ
入力バッファーのサイズ
出力バッファー
NULL に設定します。
出力バッファーの長さ
0 に設定します。
状態ブロック
Irp->IoStatus.Status は、要求が成功した場合にSTATUS_SUCCESSに設定されます。 それ以外の場合は、状態 NTSTATUS コードとして適切なエラー状態に します。
備考
カーネル モード SCSI 静止イメージ ドライバーがデバイスに SCSI コマンドを送信すると、既定では、ドライバーは操作をタイムアウトする前に 30 秒待機します。 デバイスのタイムアウト値を変更するには、IOCTL_SCSISCAN_CMD コントロール コードを使用して DeviceloControl 関数を呼び出します。 指定されたタイムアウト値は、デバイスが閉じられるまで有効なままです。
タイムアウト値は半秒で指定されます。 したがって、指定した値が 100 の場合、ドライバーはデバイスをタイムアウトする前に 50 秒間待機します。
詳細については、「静止画像デバイスの Kernel-Mode ドライバーへのアクセス」を参照してください。
コード例
ULONG timeout = 240;
fRet = DeviceIoControl( m_DeviceDataHandle,
(DWORD)IOCTL_SCSISCAN_SET_TIMEOUT,
&timeout,
sizeof(ULONG),
NULL, NULL, &dwBytesReturned, NULL);
必要条件
要件 | 価値 |
---|---|
ヘッダー | scsiscan.h (Scsiscan.h を含む) |
関連項目
ドライバー での IOCTL 要求の作成の
WdfIoTargetSendInternalIoctlOthersSynchronously を する
WdfIoTargetSendInternalIoctlSynchronously
WdfIoTargetSendIoctlSynchronously を する