IOCTL_SCSISCAN_SET_TIMEOUT IOCTL (scsiscan.h)
Der IOCTL_SCSISCAN_SET_TIMEOUT Steuercode ändert den Timeoutwert, der vom Kernelmodus-Standbildtreiber für SCSI-Busse verwendet wird, wenn er auf ein Gerät zugreift.
Hauptcode
Eingabepuffer
Der Speicherort, der einen Timeoutwert in halben Sekunden enthält.
Länge des Eingabepuffers
Größe des Eingabepuffers
Ausgabepuffer
Auf NULL festgelegt.
Länge des Ausgabepuffers
Auf 0 festlegen.
Statusblock
Irp->IoStatus.Status wird auf STATUS_SUCCESS festgelegt, wenn die Anforderung erfolgreich ist. Andernfalls wird Status zur entsprechenden Fehlerbedingung als NTSTATUS-Code verwendet.
Hinweise
Wenn der SCSI-Standbildtreiber im Kernelmodus einen SCSI-Befehl an ein Gerät sendet, wartet der Treiber standardmäßig 30 Sekunden, bevor ein Timeout des Vorgangs auftritt. Sie können den Timeoutwert für ein Gerät ändern, indem Sie die DeviceloControl-Funktion mit dem IOCTL_SCSISCAN_CMD Steuercode aufrufen. Der angegebene Timeoutwert bleibt in Kraft, bis das Gerät geschlossen wird.
Timeoutwerte werden in halben Sekunden angegeben. Ein angegebener Wert von 100 bewirkt daher, dass der Treiber 50 Sekunden wartet, bevor ein Timeout des Geräts auftritt.
Weitere Informationen finden Sie unter Zugreifen auf Kernel-Mode Treiber für Standbildgeräte.
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 (Scsiscan.h einschließen) |
Weitere Informationen
Erstellen von IOCTL-Anforderungen in Treibern
WdfIoTargetSendInternalIoctlOthersSynchronly