Partilhar via


Manipulando um evento de GUID_TARGET_DEVICE_REMOVE_CANCELLED

Se uma solicitação de IRP_MN_QUERY_REMOVE_DEVICE falhar, o gerenciador de PnP enviará um IRP IRP_MN_CANCEL_REMOVE_DEVICE para os drivers do dispositivo. Depois que o IRP cancel-remove for concluído com êxito, o gerenciador PnP chamará todas as rotinas de retorno de chamada de notificação registradas para EventCategoryTargetDeviceChange no dispositivo. O gerenciador PnP especifica uma NotificationStructure. Evento de GUID_TARGET_DEVICE_REMOVE_CANCELLED.

Ao manipular um evento de GUID_TARGET_DEVICE_REMOVE_CANCELLED, uma rotina de retorno de chamada de notificação deve:

  • Registre novamente a notificação do dispositivo de destino.

    Como o driver fechou o identificador de registro anterior em resposta à notificação de remoção de consulta, o driver deve abrir um novo identificador. O driver deve:

    1. Remova o registro antigo com IoUnregisterPlugPlayNotification.

    2. Abra um novo identificador para o dispositivo.

    3. Registre novamente para notificação no novo identificador com IoRegisterPlugPlayNotification.