Partager via


IoSetHardErrorOrVerifyDevice, fonction (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

Aucun

Remarques

Les pilotes de niveau inférieur pour les périphériques multimédias de suppression doivent appeler IoSetHardErrorOrVerifyDevice avant d’effectuer un IRP, si un appel à IoIsErrorUserInduced retourne TRUE. Pour plus d’informations, consultez prise en charge des supports amovibles.

Par la suite, un pilote de système de fichiers utilise des 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’est pas NULL . Si la valeur est NULL, IoSetHardErrorOrVerifyDevice ne doit pas être appelée à l’aide de l’IRP actuel. Au lieu de cela, le pilote doit vérifier toutes les IRPs reçues et traitées, jusqu’à ce qu’il soit reçu pour lequel irp->Tail.Overlay. Le thread n’est pas NULL. À ce stade, IoSetHardErrorOrVerifyDevice pouvez être appelée.

Exigences

Exigence Valeur
client minimum pris en charge Disponible à partir de Windows 2000.
plateforme cible Universel
d’en-tête ntddk.h (include Ntddk.h)
bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <=DISPATCH_LEVEL

Voir aussi

IoIsErrorUserInduced

IoRaiseHardError

IoRaiseInformationalHardError