Fonction IoInvalidateDeviceRelations (wdm.h)
La routine IoInvalidateDeviceRelations informe le gestionnaire PnP que les relations pour un appareil (telles que les relations de bus, les relations d’éjection, les relations de suppression et la relation d’appareil cible) ont changé.
Syntaxe
void IoInvalidateDeviceRelations(
[in] PDEVICE_OBJECT DeviceObject,
[in] DEVICE_RELATION_TYPE Type
);
Paramètres
[in] DeviceObject
Pointeur vers l’AOP de l’appareil.
[in] Type
Spécifie une valeur d’énumération DEVICE_RELATION_TYPE qui décrit le type de relations qui ont changé. Les valeurs possibles sont BusRelations, EjectionRelations, RemovalRelations et TargetDeviceRelation. À compter de Windows 7, la valeur PowerRelations est également prise en charge.
Valeur de retour
None
Remarques
Pour certains types de relations, tels que BusRelations, cette routine oblige le gestionnaire PnP ou le gestionnaire d’alimentation à collecter des informations de relations mises à jour en envoyant une demande de IRP_MN_QUERY_DEVICE_RELATIONS aux pilotes de l’appareil. Pour d’autres types de relation, tels que EjectionRelations, le gestionnaire PnP n’a pas besoin de collecter immédiatement de nouvelles informations de relation ; Le gestionnaire PnP interroge les pilotes pour les relations d’éjection uniquement lorsqu’il se prépare à éjecter un appareil.
Après qu’un pilote de bus a appelé IoInvalidateDeviceRelations pour informer le gestionnaire PnP qu’un appareil a disparu, le pilote de bus doit continuer à gérer les IRP PnP pour cet appareil jusqu’à ce qu’il reçoive une demande de IRP_MN_REMOVE_DEVICE . En réponse à cette IRP, le pilote de bus retourne STATUS_NO_SUCH_DEVICE. Jusqu’à ce que le pilote de bus termine correctement la demande de IRP_MN_REMOVE_DEVICE, il peut accéder à l’extension de périphérique pour case activée ses indicateurs pour l’appareil.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible à partir de Windows 2000. |
Plateforme cible | Universal |
En-tête | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |
Règles de conformité DDI | HwStorPortProhibitedDDIs(storport) |