Função PsSetLoadImageNotifyRoutineEx (ntddk.h)
A rotina PsSetLoadImageNotifyRoutineEx registra um retorno de chamada fornecido pelo driver que é notificado posteriormente sempre que uma imagem (por exemplo, uma DLL ou EXE) é carregada (ou mapeada na memória).
NTSTATUS PsSetLoadImageNotifyRoutineEx(
[in] PLOAD_IMAGE_NOTIFY_ROUTINE NotifyRoutine,
[in] ULONG_PTR Flags
);
[in] NotifyRoutine
Um ponteiro para o chamador implementado PLOAD_IMAGE_NOTIFY_ROUTINE rotina de retorno de chamada para notificações de imagem de carga.
[in] Flags
Fornece uma máscara de bits de sinalizadores que controlam a função de retorno de chamada. Estes são os valores possíveis:
- PS_IMAGE_NOTIFY_CONFLICTING_ARCHITECTURE indica que a rotina de retorno de chamada deve ser invocada para todas as imagens potencialmente executáveis, incluindo imagens que têm uma arquitetura diferente da arquitetura nativa do sistema operacional.
Código de retorno | Descrição |
---|---|
|
O retorno de chamada foi registrado com êxito. |
|
O sinalizador inválido foi fornecido em Sinalizadores. |
|
A rotina falhou ao alocar um bloco de retorno de chamada devido à falta de recursos. |
Os drivers de criação de perfil de sistema de nível mais alto podem chamar PsSetLoadImageNotifyRoutineEx para configurar suas rotinas de notificação de imagem de carga (consulte PLOAD_IMAGE_NOTIFY_ROUTINE).
O número máximo de drivers que podem ser registrados simultaneamente para receber notificações de imagem de carga é 64. Se o número máximo de rotinas de notificação de imagem de carga já estiver registrado quando um driver chamar PsSetLoadImageNotifyRoutineEx para tentar registrar uma rotina de notificação adicional, PsSetLoadImageNotifyRoutineEx falhará e retornará STATUS_INSUFFICIENT_RESOURCES.
Um driver deve remover quaisquer retornos de chamada registrados antes de descarregar. Você pode remover o retorno de chamada chamando a rotina PsRemoveLoadImageNotifyRoutine .
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 10, versão 1709 |
Servidor mínimo com suporte | Windows Server 2016 |
Plataforma de Destino | Windows |
Cabeçalho | ntddk.h |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe (modo kernel) |
IRQL | PASSIVE_LEVEL |