Partilhar via


Tratamento de um evento GUID_TARGET_DEVICE_REMOVE_COMPLETE

Antes de o gestor PnP enviar um IRP IRP_MN_REMOVE_DEVICE para os drivers de um dispositivo, o gestor PnP chama qualquer rotina de notificação do modo kernel registrada para EventCategoryTargetDeviceChange no dispositivo. O gestor PnP especifica um NotificationStructure. Evento de GUID_TARGET_DEVICE_REMOVE_COMPLETE.

Ao lidar com um evento GUID_TARGET_DEVICE_REMOVE_COMPLETE, uma rotina de retorno de chamada de notificação deve:

  • Remova o registro de notificação no dispositivo.

    O dispositivo foi removido, então o driver chama IoUnregisterPlugPlayNotification para remover o registro de notificação.

    O dispositivo ainda pode estar fisicamente presente na máquina, mas todos os objetos do dispositivo foram excluídos e o dispositivo não está disponível para uso.

  • Execute o processamento de remoção inesperada se o driver não tiver recebido uma notificação de consulta de remoção anterior.

    Se um dispositivo for removido inesperadamente, o gestor PnP enviará aos drivers registados uma notificação de remoção completa sem uma notificação prévia de consulta de remoção. Neste caso, um driver tem que executar qualquer limpeza necessária, como fechar quaisquer alças para o dispositivo e remover quaisquer referências pendentes para o objeto de arquivo.