IOCTL_SCSISCAN_SET_TIMEOUT IOCTL (scsiscan.h)

IOCTL_SCSISCAN_SET_TIMEOUT コントロール コードは、デバイスにアクセスするときに SCSI バスのカーネル モード静止イメージ ドライバーで使用されるタイムアウト値を変更します。

メジャー コード

IRP_MJ_DEVICE_CONTROL

[入力バッファー]

タイムアウト値を含む場所 (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);

要件

要件
Header scsiscan.h (Scsiscan.h を含む)

こちらもご覧ください

ドライバー内での IOCTL 要求の作成

WdfIoTargetSendInternalIoctlOthersSynchronously

WdfIoTargetSendInternalIoctlSynchronously

WdfIoTargetSendIoctlSynchronously