Compartir a través de


Función IoInvalidateDeviceRelations (wdm.h)

La rutina IoInvalidateDeviceRelations notifica al administrador de PnP que las relaciones de un dispositivo (como las relaciones de bus, las relaciones de ejección, las relaciones de eliminación y la relación del dispositivo de destino) han cambiado.

Sintaxis

void IoInvalidateDeviceRelations(
  [in] PDEVICE_OBJECT       DeviceObject,
  [in] DEVICE_RELATION_TYPE Type
);

Parámetros

[in] DeviceObject

Puntero al PDO del dispositivo.

[in] Type

Especifica un DEVICE_RELATION_TYPE valor de enumeración que describe el tipo de relaciones que han cambiado. Los valores posibles incluyen BusRelations, EjectionRelations, RemovalRelationsy TargetDeviceRelation. A partir de Windows 7, también se admite el valor de PowerRelations.

Valor devuelto

Ninguno

Observaciones

Para algunos tipos de relación, como BusRelations, esta rutina hace que el administrador de PnP o el administrador de energía recopilen información de relaciones actualizadas enviando una solicitud de IRP_MN_QUERY_DEVICE_RELATIONS a los controladores para el dispositivo. Para otros tipos de relación, como EjectionRelations, el administrador de PnP no necesita recopilar información de relación nueva inmediatamente; El administrador de PnP consulta los controladores para las relaciones de ejección solo cuando se prepara para expulsar un dispositivo.

Después de que un controlador de autobús llame a IoInvalidateDeviceRelations para informar al administrador de PnP de que un dispositivo ha desaparecido, el controlador de autobús debe seguir controlando los IRP de PnP para ese dispositivo hasta que reciba una solicitud de IRP_MN_REMOVE_DEVICE. En respuesta a este IRP, el controlador de autobús devuelve STATUS_NO_SUCH_DEVICE. Hasta que el controlador de autobús complete correctamente la solicitud de IRP_MN_REMOVE_DEVICE, el controlador de bus puede acceder a la extensión del dispositivo para comprobar sus marcas para el dispositivo.

Requisitos

Requisito Valor
cliente mínimo admitido Disponible a partir de Windows 2000.
de la plataforma de destino de Universal
encabezado de wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
biblioteca de NtosKrnl.lib
DLL de NtosKrnl.exe
irQL <= DISPATCH_LEVEL
reglas de cumplimiento de DDI HwStorPortProhibitedDIs(storport)

Consulte también

IRP_MN_QUERY_DEVICE_RELATIONS

IRP_MN_REMOVE_DEVICE