Partager via


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 fixe en mode noyau pour les bus SCSI lorsqu’il accède à un appareil.

Code principal

IRP_MJ_DEVICE_CONTROL

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

valeur de l’en-tête définie sur Null.

Longueur de la mémoire tampon de sortie

Définit la valeur 0.

Bloc d’état

Irp->IoStatus.Status est défini sur STATUS_SUCCESS si la demande réussit. Sinon, indiquez la condition d’erreur appropriée en tant que code NTSTATUS .

Remarques

Lorsque le pilote d’image 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 oblige le pilote à attendre 50 secondes avant d’expirer l’appareil.

Pour plus d’informations, consultez Accès aux pilotes Kernel-Mode pour les appareils à image fixe.

Exemple de code

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

Configuration requise

Condition requise Valeur
En-tête scsiscan.h (inclure Scsiscan.h)

Voir aussi

Création de requêtes IOCTL dans les pilotes

WdfIoTargetSendInternalIoctlOthersSynchronously

WdfIoTargetSendInternalIoctlSynchronously

WdfIoTargetSendIoctlSynchronously