Condividi tramite


IOCTL_SCSISCAN_SET_TIMEOUT IOCTL (scsiscan.h)

Il codice di controllo IOCTL_SCSISCAN_SET_TIMEOUT modifica il valore di timeout usato dal driver immagine in modalità kernel per gli autobus SCSI quando accede a un dispositivo.

Codice principale

IRP_MJ_DEVICE_CONTROL

Buffer di input

Posizione contenente un valore di timeout, espresso in mezzo secondi.

Lunghezza del buffer di input

Dimensioni del buffer di input

Buffer di output

Impostata su NULL.

Lunghezza del buffer di output

Impostare su 0.

Blocco dello stato

Irp->IoStatus.Status è impostato su STATUS_SUCCESS se la richiesta ha esito positivo. In caso contrario, stato alla condizione di errore appropriata come codice NTSTATUS .

Commenti

Quando il driver SCSI in modalità kernel invia un comando SCSI a un dispositivo, per impostazione predefinita il driver attende 30 secondi prima di timeout dell'operazione. È possibile modificare il valore di timeout per un dispositivo chiamando la funzione DeviceloControl con il codice di controllo IOCTL_SCSISCAN_CMD . Il valore di timeout specificato rimane attivo fino alla chiusura del dispositivo.

I valori di timeout vengono specificati in mezzo secondi. Pertanto, un valore specificato pari a 100 fa sì che il driver attenda 50 secondi prima di scadere il dispositivo.

Per altre informazioni, vedere Accesso ai driver Kernel-Mode per i dispositivi ancora immagine.

Esempio di codice

ULONG timeout = 240;
fRet = DeviceIoControl( m_DeviceDataHandle,
        (DWORD)IOCTL_SCSISCAN_SET_TIMEOUT,
        &timeout,
        sizeof(ULONG),
        NULL, NULL, &dwBytesReturned, NULL);

Requisiti

Requisito Valore
Intestazione scsiscan.h (include Scsiscan.h)

Vedi anche

Creazione di richieste IOCTL nei driver

WdfIoTargetSendInternalIoctlOthersSynchronously

WdfIoTargetSendInternalIoctlSynchronously

WdfIoTargetSendIoctlSynchronously