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 valor de enumeración DEVICE_RELATION_TYPE que describe el tipo de relaciones que han cambiado. Entre los valores posibles se incluyen BusRelations, EjectionRelations, RemovalRelations y TargetDeviceRelation. A partir de Windows 7, también se admite el valor de PowerRelations .

Valor devuelto

None

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 actualizada de relaciones enviando una solicitud de IRP_MN_QUERY_DEVICE_RELATIONS a los controladores para el dispositivo. Para otros tipos de relaciones, 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 expulsió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 autobús puede acceder a la extensión del dispositivo para comprobar sus marcas para el dispositivo.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible a partir de Windows 2000.
Plataforma de destino Universal
Encabezado wdm.h (incluya Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
Archivo DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL
Reglas de cumplimiento de DDI HwStorPortProhibitedDDIs(storport)

Consulte también

IRP_MN_QUERY_DEVICE_RELATIONS

IRP_MN_REMOVE_DEVICE