Usando a notificação de alteração de dispositivo de destino PnP
Um driver registra a notificação EventCategoryTargetDeviceChange em um dispositivo para que o driver possa ser notificado quando o dispositivo estiver prestes a ser removido. Por exemplo, se um driver abrir um identificador para um dispositivo, o driver deverá se registrar para a notificação EventCategoryTargetDeviceChange no dispositivo para que o driver possa fechar o identificador quando o gerenciador PnP precisar remover o dispositivo.
Os drivers também podem usar a notificação EventCategoryTargetDeviceChange para notificação personalizada. (Consulte Usando a notificação personalizada PnP.)
Importante
O registro de notificações de alteração de dispositivo de destino PnP não se destina a notificar os ouvintes sobre as alterações de estado de energia do dispositivo de destino. Se um driver precisar saber sobre uma alteração de energia de dispositivo de destino, o driver deverá definir uma relação de energia entre dispositivos.
Para definir uma relação de energia, o driver chama IoInvalidateDeviceRelations com o parâmetro Type definido como PowerRelations e responde à consulta IRP_MN_QUERY_DEVICE_RELATIONS do gerenciador PnP para PowerRelations com as informações corretas.
As subseções a seguir discutem como se registrar para notificação de alteração de dispositivo de destino e como lidar com eventos de alteração de dispositivo de destino em uma rotina de retorno de chamada de notificação PnP:
Registrando-se para notificação de alteração de dispositivo de destino
Manipulando um evento de GUID_TARGET_DEVICE_QUERY_REMOVE
Manipulando um evento de GUID_TARGET_DEVICE_REMOVE_COMPLETE
Manipulando um evento de GUID_TARGET_DEVICE_REMOVE_CANCELLED