Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O gestor PnP chama rotinas de retorno de chamada de notificação em IRQL = PASSIVE_LEVEL.
Para garantir o bom funcionamento do subsistema PnP, uma rotina de retorno de chamada de notificação PnP deve seguir estas diretrizes:
Uma rotina de retorno de chamada de notificação não deve ser bloqueada.
Uma rotina de retorno de chamada de notificação não deve chamar ou causar uma chamada para rotinas síncronas que geram eventos PnP ou qualquer rotina que bloqueie a espera pela instalação ou remoção do dispositivo.
Chamar tais rotinas durante uma função de retorno de notificação pode causar um bloqueio do sistema.
Por exemplo, um driver não deve chamar IoReportTargetDeviceChange em uma rotina de retorno de chamada de notificação. Chame IoReportTargetDeviceChangeAsynchronous em vez disso.
Uma rotina de retorno de chamada de notificação deve indicar sucesso para quaisquer eventos que não falhem explicitamente.
Quando um motorista se registra para notificação em uma categoria de evento, o gerente PnP notifica o motorista de todos os eventos nessa categoria, presentes e futuros. Se um driver retornar um status de erro para eventos que não manipula, o driver corre o risco de falhar um novo evento de consulta por engano.
Um driver retorna corretamente um status de erro quando, por exemplo, o driver falha numa notificação de consulta para vetar o evento proposto.
Uma rotina de retorno de chamada de notificação deve ser um código paginado.