IOCTL_SCSISCAN_SET_TIMEOUT IOCTL (scsiscan.h)
Le code de contrôle IOCTL_SCSISCAN_SET_TIMEOUT modifie la valeur de délai d’attente utilisée par le pilote d’image en mode noyau pour les bus SCSI lorsqu’il accède à un appareil.
Code principal
Mémoire tampon d’entrée
Emplacement contenant une valeur de délai d’attente, en demi-secondes.
Longueur de la mémoire tampon d’entrée
Taille de la mémoire tampon d’entrée
Mémoire tampon de sortie
Défini sur NULL.
Longueur de la mémoire tampon de sortie
Défini sur 0.
Bloc d’état
> IoStatus.Status est défini sur STATUS_SUCCESS si la requête réussit. Sinon, état à la condition d’erreur appropriée en tant que code NTSTATUS.
Remarques
Lorsque le pilote SCSI en mode noyau envoie une commande SCSI à un appareil, par défaut, le pilote attend 30 secondes avant d’expirer l’opération. Vous pouvez modifier la valeur de délai d’attente d’un appareil en appelant la fonction DeviceloControl avec le code de contrôle IOCTL_SCSISCAN_CMD. La valeur de délai d’attente spécifiée reste en vigueur jusqu’à ce que l’appareil soit fermé.
Les valeurs de délai d’attente sont spécifiées en demi-secondes. Ainsi, une valeur spécifiée de 100 entraîne l’attente du pilote 50 secondes avant l’expiration du délai d’attente de l’appareil.
Pour plus d’informations, consultez Accès aux pilotes Kernel-Mode pour les appareils toujours image.
Exemple de code
ULONG timeout = 240;
fRet = DeviceIoControl( m_DeviceDataHandle,
(DWORD)IOCTL_SCSISCAN_SET_TIMEOUT,
&timeout,
sizeof(ULONG),
NULL, NULL, &dwBytesReturned, NULL);
Exigences
Exigence | Valeur |
---|---|
d’en-tête | scsiscan.h (include Scsiscan.h) |
Voir aussi
création de requêtes IOCTL dans les pilotes
WdfIoTargetSendInternalIoctlOthersSynchronously