Manipulando solicitações PnP para periféricos de armazenamento
A rotina DispatchPnP de um driver de classe de armazenamento é responsável pelo seguinte em resposta às solicitações PnP:
Iniciando seu dispositivo em resposta a uma solicitação de início (IRP_MJ_PNP com IRP_MN_START_DEVICE). Consulte Manipulando a inicialização PnP em um driver de classe de armazenamento.
Removendo seu dispositivo em resposta a uma solicitação de remoção (IRP_MJ_PNP com IRP_MN_REMOVE_DEVICE). Consulte Rotina RemoveDevice do Driver de Classe de Armazenamento.
Se o dispositivo puder conter o arquivo de paginação do sistema, mantenha uma contagem de notificações de caminho de paginação em sua extensão de dispositivo em resposta a uma solicitação de notificação de paginação (IRP_MJ_PNP com IRP_MN_DEVICE_USAGE_NOTIFICATION) e encaminhando a solicitação para o driver mais baixo.
Manipulando solicitações query-remove e query-stop e, se o dispositivo contiver o arquivo de paginação do sistema ou o arquivo de hibernação, falhando nessas solicitações. Um driver também poderá falhar em uma solicitação de remoção de consulta se seu dispositivo for solicitado para despejo de memória, pois a remoção desse dispositivo desabilita o despejo de memória.
O driver de classe de armazenamento encaminha solicitações de consulta, cancelamento e parada PnP (exceto para solicitações de consulta com falha) para o driver inferior seguinte.