IOCTL_SCSISCAN_SET_TIMEOUT IOCTL (scsiscan.h)
Der IOCTL_SCSISCAN_SET_TIMEOUT Steuerelementcode ändert den Timeoutwert, der vom Kernelmodus verwendet wird, wenn er auf ein Gerät zugreift.
Hauptcode
Eingabepuffer
Der Ort, der einen Timeoutwert enthält, in halb Sekunden.
Eingabepufferlänge
Größe des Eingabepuffers
Ausgabepuffer
Auf NULL festgelegt.
Länge des Ausgabepuffers
Auf 0 festgelegt.
Statusblock
Irp->IoStatus.Status auf STATUS_SUCCESS festgelegt ist, wenn die Anforderung erfolgreich ist. Andernfalls Status der entsprechenden Fehlerbedingung als NTSTATUS- Code.
Bemerkungen
Wenn der Kernelmodus-SCSI-Imagetreiber einen SCSI-Befehl an ein Gerät sendet, wartet der Treiber standardmäßig 30 Sekunden, bevor der Vorgang beendet wird. Sie können den Timeoutwert für ein Gerät ändern, indem Sie die DeviceloControl--Funktion mit dem IOCTL_SCSISCAN_CMD-Steuerelementcode aufrufen. Der angegebene Timeoutwert bleibt wirksam, bis das Gerät geschlossen wird.
Timeoutwerte werden in halb Sekunden angegeben. Daher bewirkt ein angegebener Wert von 100, dass der Treiber 50 Sekunden vor dem Timeout des Geräts wartet.
Weitere Informationen finden Sie unter Zugreifen auf Kernel-Mode Drivers for Still Image Devices.
Codebeispiel
ULONG timeout = 240;
fRet = DeviceIoControl( m_DeviceDataHandle,
(DWORD)IOCTL_SCSISCAN_SET_TIMEOUT,
&timeout,
sizeof(ULONG),
NULL, NULL, &dwBytesReturned, NULL);
Anforderungen
Anforderung | Wert |
---|---|
Header- | scsiscan.h (include Scsiscan.h) |
Siehe auch
Erstellen von IOCTL-Anforderungen in Treibern
WdfIoTargetSendInternalIoctlOthersSynchronously