// scsiscan.h
// CTL_CODE(0x0019, 0x007, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_SCSISCAN_SET_TIMEOUT 0x0019001C
View the official Windows Driver Kit DDI referenceNo description available.
The IOCTL_SCSISCAN_SET_TIMEOUT control code modifies the time-out value used by the kernel-mode still image driver for SCSI buses when it accesses a device.
The location containing a time-out value, in half seconds.
Size of the input buffer
Set to NULL.
Set to 0.
Irp->IoStatus.Status is set to STATUS_SUCCESS if the request is successful. Otherwise, Status to the appropriate error condition as a NTSTATUS code.
When the kernel-mode SCSI still image driver sends a SCSI command to a device, by default the driver waits 30 seconds before timing out the operation. You can change the time-out value for a device by calling the DeviceloControl function with the IOCTL_SCSISCAN_CMD control code. The specified time-out value stays in effect until the device is closed.
Time-out values are specified in half seconds. Thus a specified value of 100 causes the driver to wait 50 seconds before timing out the device.
For more information, see Accessing Kernel-Mode Drivers for Still Image Devices.
ULONG timeout = 240;
fRet = DeviceIoControl( m_DeviceDataHandle,
(DWORD)IOCTL_SCSISCAN_SET_TIMEOUT,
&timeout,
sizeof(ULONG),
NULL, NULL, &dwBytesReturned, NULL);
Creating IOCTL Requests in Drivers
WdfIoTargetSendInternalIoctlOthersSynchronously
WdfIoTargetSendInternalIoctlSynchronously
WdfIoTargetSendIoctlSynchronously