Fonction IoSetHardErrorOrVerifyDevice (ntddk.h)
Les pilotes de niveau inférieur appellent la routine IoSetHardErrorOrVerifyDevice pour identifier un périphérique multimédia amovible qui a rencontré une erreur, afin qu’un pilote de système de fichiers puisse inviter l’utilisateur à vérifier que le support est valide.
Syntaxe
void IoSetHardErrorOrVerifyDevice(
[in] PIRP Irp,
[in] PDEVICE_OBJECT DeviceObject
);
Paramètres
[in] Irp
Pointeur vers l’IRP pour lequel le pilote a rencontré une erreur provoquée par l’utilisateur.
[in] DeviceObject
Pointeur vers l’appareil cible à vérifier pour l’opération d’E/S.
Valeur de retour
None
Remarques
Les pilotes de niveau inférieur pour les périphériques multimédias de suppression doivent appeler IoSetHardErrorOrVerifyDevice avant de terminer une IRP, si un appel à IoIsErrorUserInduced retourne TRUE. Pour plus d’informations, consultez Prise en charge du support amovible.
Par la suite, un pilote de système de fichiers utilise les informations fournies dans l’objet d’appareil spécifié pour envoyer une boîte de dialogue à l’utilisateur, qui peut corriger l’erreur et réessayer l’opération ou l’annuler.
L’IRP passé à IoSetHardErrorOrVerifyDevice doit être associé à un thread. Par conséquent, avant qu’un pilote appelle IoSetHardErrorOrVerifyDevice, il doit vérifier que irp-Tail.Overlay>. Le thread n’a pas la valeur NULL. Si la valeur est NULL, IoSetHardErrorOrVerifyDevice ne doit pas être appelé à l’aide de l’IRP actuel. Au lieu de cela, le pilote doit case activée tous les IRP reçus et traités par la suite, jusqu’à ce qu’un soit reçu pour lequel irp-Tail.Overlay>. Le thread n’a pas la valeur NULL. À ce stade, IoSetHardErrorOrVerifyDevice peut être appelé.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible à partir de Windows 2000. |
Plateforme cible | Universal |
En-tête | ntddk.h (inclure Ntddk.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <=DISPATCH_LEVEL |