Partager via


IRP_MN_EJECT

Les pilotes de bus gèrent généralement cette demande pour leurs appareils enfants (PDO enfants) qui prennent en charge l’éjection d’appareil. Les pilotes de fonction et de filtre ne reçoivent pas cette demande.

Valeur

0x11

Code majeur

IRP_MJ_PNP

Date d’envoi

Le gestionnaire PnP envoie cette IRP pour diriger le ou les pilotes appropriés à éjecter l’appareil de son emplacement.

Le gestionnaire PnP envoie cette IRP à IRQL PASSIVE_LEVEL dans un contexte de thread arbitraire.

Paramètres d’entrée

Aucun

Paramètres de sortie

None

Bloc d’état E/S

Un pilote de bus définit Irp-IoStatus.Status> sur STATUS_SUCCESS ou sur une status d’erreur appropriée.

En cas de réussite, un pilote de bus définit Irp-IoStatus.Information> sur zéro.

Si un pilote de bus ne gère pas cette IRP, il laisse Irp-IoStatus.Status> tel quel et termine l’IRP.

Opération

Pour que l’appareil soit éjecté, l’appareil doit être à l’état d’alimentation de l’appareil D3 (désactivé) et doit être déverrouillé (si l’appareil prend en charge le verrouillage).

Tout pilote qui retourne la réussite de cette IRP doit attendre que l’appareil ait été éjecté avant de terminer l’IRP.

Consultez Plug-and-Play pour connaître les règles générales relatives à la gestion des Plug-and-Play irps mineurs.

Envoi de cet IRP

Réservé pour le système. Les pilotes ne doivent pas envoyer cette IRP.

Au lieu de cela, consultez la page de référence pour la routine IoRequestDeviceEject .

Spécifications

En-tête

Wdm.h (inclure Wdm.h, Ntddk.h ou Ntifs.h)

Voir aussi

IoRequestDeviceEject