Função PsSetCreateProcessNotifyRoutine (ntddk.h)
A rotina PsSetCreateProcessNotifyRoutine adiciona uma rotina de retorno de chamada fornecida pelo driver ou a remove de uma lista de rotinas a serem chamadas sempre que um processo é criado ou excluído.
Sintaxe
NTSTATUS PsSetCreateProcessNotifyRoutine(
[in] PCREATE_PROCESS_NOTIFY_ROUTINE NotifyRoutine,
[in] BOOLEAN Remove
);
Parâmetros
[in] NotifyRoutine
Especifica o ponto de entrada de uma rotina de retorno de chamada de criação de processo fornecida pelo chamador. Consulte PCREATE_PROCESS_NOTIFY_ROUTINE.
[in] Remove
Indica se a rotina especificada por NotifyRoutine deve ser adicionada ou removida da lista de rotinas de notificação do sistema. Se FALSE, a rotina especificada será adicionada à lista. Se TRUE, a rotina especificada será removida da lista.
Retornar valor
PsSetCreateProcessNotifyRoutine pode retornar um dos seguintes:
Código de retorno | Descrição |
---|---|
|
A NotifyRoutine fornecida agora está registrada no sistema. |
|
A NotifyRoutine fornecida já foi registrada, portanto, essa chamada é uma chamada redundante ou o sistema atingiu seu limite para registrar retornos de chamada de criação de processo. |
Comentários
Os drivers de nível mais alto podem chamar PsSetCreateProcessNotifyRoutine para configurar suas rotinas de notificação de criação de processo implementadas como PCREATE_PROCESS_NOTIFY_ROUTINE.
Um DRIVER de criação de perfil de sistema de nível superior ou IFS pode registrar um retorno de chamada de criação de processo para acompanhar a criação e a exclusão de processos em todo o sistema em relação ao estado interno do driver. Para o Windows Vista e versões posteriores do Windows, o sistema pode registrar até 64 rotinas de retorno de chamada de criação de processo.
Um driver deve remover todos os retornos de chamada registrados antes de descarregar. Você pode remover o retorno de chamada chamando PsSetCreateProcessNotify com Remove = TRUE. Um driver não deve fazer essa chamada de sua implementação da rotina de retorno de chamada PCREATE_PROCESS_NOTIFY_ROUTINE.
Depois que uma rotina fornecida pelo driver é registrada, ela é chamada com Create definido como TRUE logo após o thread inicial ser criado dentro do processo recém-criado designado pelo identificador ProcessId de entrada. O identificador ParentId de entrada identifica o processo pai do processo recém-criado (este é o pai usado para prioridade, afinidade, cota, token e herança de identificador, entre outros).
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível a partir do Windows 2000. |
Plataforma de Destino | Universal |
Cabeçalho | ntddk.h (inclua Ntddk.h) |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
Regras de conformidade da DDI | HwStorPortProhibitedDIs(storport), IrqlPsPassive(wdm), PowerIrpDDis(wdm) |
Confira também
PCREATE_PROCESS_NOTIFY_ROUTINE
PsSetCreateProcessNotifyRoutineEx