Função SymRegisterFunctionEntryCallback (dbghelp.h)

Registra uma função de retorno de chamada para uso pelo procedimento de andar de pilha em computadores Alfa.

Sintaxe

BOOL IMAGEAPI SymRegisterFunctionEntryCallback(
  [in] HANDLE                     hProcess,
  [in] PSYMBOL_FUNCENTRY_CALLBACK CallbackFunction,
  [in] PVOID                      UserContext
);

Parâmetros

[in] hProcess

Um identificador para o processo que foi originalmente passado para a função StackWalk64 .

[in] CallbackFunction

Uma função de retorno de chamada SymRegisterFunctionEntryCallbackProc64 .

[in] UserContext

Um valor definido pelo usuário ou NULL. Esse valor é simplesmente passado para a função de retorno de chamada. Normalmente, esse parâmetro é usado por um aplicativo para passar um ponteiro para uma estrutura de dados que permite que a função de retorno de chamada estabeleça algum contexto.

Retornar valor

Se a função for bem-sucedida, o valor retornado será TRUE.

Se a função falhar, o valor retornado será FALSE. Para recuperar informações de erro estendidas, chame GetLastError.

Comentários

A função SymRegisterFunctionEntryCallback64 permite que um aplicativo registre uma função de retorno de chamada para uso pelo procedimento de movimentação de pilha. O procedimento de caminhada de pilha chama a função de retorno de chamada registrada quando não é possível localizar uma entrada de tabela de funções para um endereço. Na maioria dos casos, o procedimento de movimentação de pilha localiza as entradas da tabela de funções na tabela de funções da imagem que contém o endereço. No entanto, em situações em que as entradas da tabela de funções não estão na imagem, esse retorno de chamada permite que o depurador forneça a entrada da tabela de funções de outra fonte. Por exemplo, o código gerado em tempo de execução em computadores Alfa pode definir tabelas de funções dinâmicas para dar suporte ao tratamento de exceções e ao rastreamento de pilha.

Todas as funções DbgHelp, como esta, são threaded único. Portanto, chamadas de mais de um thread para essa função provavelmente resultarão em comportamento inesperado ou corrupção de memória. Para evitar isso, você deve sincronizar todas as chamadas simultâneas de mais de um thread para essa função.

Essa função substitui a função SymRegisterFunctionEntryCallback . Para obter mais informações, consulte Suporte de plataforma atualizado. SymRegisterFunctionEntryCallback é definido da seguinte maneira em Dbghelp.h.

#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymRegisterFunctionEntryCallback SymRegisterFunctionEntryCallback64
#else
BOOL
IMAGEAPI
SymRegisterFunctionEntryCallback(
    __in HANDLE hProcess,
    __in PSYMBOL_FUNCENTRY_CALLBACK CallbackFunction,
    __in_opt PVOID UserContext
    );
#endif

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho dbghelp.h
Biblioteca Dbghelp.lib
DLL Dbghelp.dll
Redistribuível DbgHelp.dll 5.1 ou posterior

Confira também

Funções DbgHelp

StackWalk64

SymRegisterFunctionEntryCallbackProc64