Função PsSetCreateProcessNotifyRoutine (ntddk.h)
A rotina de PsSetCreateProcessNotifyRoutine adiciona uma rotina de retorno de chamada fornecida pelo driver a 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 verdadeiro, a rotina especificada será removida da lista.
Valor de retorno
PsSetCreateProcessNotifyRoutine pode retornar um dos seguintes:
Código de retorno | Descrição |
---|---|
|
O NotifyRoutine determinado agora está registrado no sistema. |
|
O NotifyRoutine já foi registrado, portanto, essa chamada é uma chamada redundante ou o sistema atingiu seu limite para registrar retornos de chamada de criação de processo. |
Observações
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 ifs ou de criação de perfil de sistema de nível mais alto 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 os retornos de chamada registrados antes de descarregar. Você pode remover o retorno de chamada chamando PsSetCreateProcessNotify com Remover = VERDADEIRO. 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 Criar definido como verdadeiro logo após o thread inicial ser criado dentro do processo recém-criado designado pelo identificador de ProcessId de de entrada. O identificador de ParentId identifica o processo pai do processo recém-criado (este é o pai usado para prioridade, afinidade, cota, token e manipulação de herança, entre outros).
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Disponível a partir do Windows 2000. |
da Plataforma de Destino | Universal |
cabeçalho | ntddk.h (inclua Ntddk.h) |
biblioteca | NtosKrnl.lib |
de DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
regras de conformidade de DDI | HwStorPortProhibitedDIs(storport), IrqlPsPassive(wdm), PowerIrpDDis(wdm) |
Consulte também
PCREATE_PROCESS_NOTIFY_ROUTINE
PsSetCreateProcessNotifyRoutineEx