Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Define destinos de continuação de tratamento de exceção dinâmica para o processo especificado.
Sintaxe
BOOL SetProcessDynamicEHContinuationTargets(
HANDLE Process,
USHORT NumberOfTargets,
PPROCESS_DYNAMIC_EH_CONTINUATION_TARGET Targets
);
Parâmetros
Process
Um identificador para o processo. Esse identificador deve ter o acesso PROCESS_SET_INFORMATION correto. Para obter mais informações, consulte Segurança do Processo e Direitos de Acesso.
NumberOfTargets
Fornece o número de destinos de continuação de tratamento de exceção dinâmica a serem definidos.
Targets
Um ponteiro para uma matriz de destinos de continuação de tratamento de exceção dinâmica. Para obter mais informações sobre essa estrutura, consulte PROCESS_DYNAMIC_EH_CONTINUATION_TARGET.
Valor de retorno
Se a função for bem-sucedida, o valor retornado não será zero.
Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError. Observe que, mesmo que a função falhe, uma parte dos destinos de continuação fornecidos pode ter sido processada com êxito. O chamador precisa verificar os sinalizadores em cada destino de continuação individual especificado por meio de Destinos para determinar se ele foi processado com êxito.
Observações
Se o Stack Protection imposto por hardware do modo de usuário estiver habilitado para um processo, ao chamar APIs que modificam o contexto de execução de um thread, como RtlRestoreContext e SetThreadContext, a validação será executada no Ponteiro de Instrução especificado no novo contexto de execução.
RtlRestoreContext é usado durante o desenrolamento da exceção SEH ( Tratamento de Exceções Estruturadas ) para descontrair o quadro de destino que contém o __except bloco e começar a executar o código no destino de continuação.
Portanto, o sistema operacional precisa saber os endereços de instrução de todos os destinos de continuação válidos para permitir a operação de desenrolamento por meio de RtlRestoreContext.
Para binários compilados, a lista de destinos de continuação é gerada pelo vinculador e armazenada na imagem binária.
Para código dinâmico, os destinos de continuação precisam ser especificados usando SetProcessDynamicEHContinuationTargets.
Requirements
| Requirement | Value |
|---|---|
| Cliente mínimo suportado | Windows 10 Build 20348 |
| Servidor mínimo compatível | Windows 10 Build 20348 |
| Header | processthreadsapi.h |
| Library | kernel32. Lib |