Compartilhar via


função de retorno de chamada PSYM_ENUMSYMBOLS_CALLBACK (dbghelp.h)

Uma função de retorno de chamada definida pelo aplicativo usada com a função SymEnumerateSymbols64 . Ele é chamado uma vez para cada símbolo enumerado e recebe as informações de símbolo.

Os tipos PSYM_ENUMSYMBOLS_CALLBACK64 e PSYM_ENUMSYMBOLS_CALLBACK64W definem um ponteiro para essa função de retorno de chamada. SymEnumerateSymbolsProc64 é um espaço reservado para o nome da função definida pelo aplicativo.

Nota Essa função é fornecida apenas para compatibilidade. Os aplicativos devem usar SymEnumSymbols.
 

Sintaxe

PSYM_ENUMSYMBOLS_CALLBACK PsymEnumsymbolsCallback;

BOOL PsymEnumsymbolsCallback(
  [in]           PCSTR SymbolName,
  [in]           ULONG SymbolAddress,
  [in]           ULONG SymbolSize,
  [in, optional] PVOID UserContext
)
{...}

Parâmetros

[in] SymbolName

O nome do símbolo. O nome poderá ser não corrigido se a opção SYMOPT_UNDNAME for usada com a função SymSetOptions .

[in] SymbolAddress

O endereço virtual para o início do símbolo.

[in] SymbolSize

O tamanho do símbolo, em bytes. O tamanho é calculado e, na verdade, é um valor de melhor adivinhação. Em alguns casos, o valor pode ser zero.

[in, optional] UserContext

O valor definido pelo usuário especificado em SymEnumerateSymbols64 ou NULL. 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 tipo de contexto.

Valor retornado

Se a função retornar TRUE, a enumeração continuará.

Se a função retornar FALSE, a enumeração será interrompida.

Comentários

O aplicativo de chamada é chamado uma vez por símbolo até que todos os símbolos sejam enumerados ou até que a função de retorno de chamada de enumeração retorne FALSE.

Essa função de retorno de chamada substitui a função de retorno de chamada PSYM_ENUMSYMBOLS_CALLBACK. PSYM_ENUMSYMBOLS_CALLBACK é definido da seguinte maneira em Dbghelp.h.

#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define PSYM_ENUMSYMBOLS_CALLBACK PSYM_ENUMSYMBOLS_CALLBACK64
#define PSYM_ENUMSYMBOLS_CALLBACKW PSYM_ENUMSYMBOLS_CALLBACK64W
#else
typedef BOOL
(CALLBACK *PSYM_ENUMSYMBOLS_CALLBACK)(
    __in PCSTR SymbolName,
    __in ULONG SymbolAddress,
    __in ULONG SymbolSize,
    __in_opt PVOID UserContext
    );

typedef BOOL
(CALLBACK *PSYM_ENUMSYMBOLS_CALLBACKW)(
    __in PCWSTR SymbolName,
    __in ULONG SymbolAddress,
    __in ULONG SymbolSize,
    __in_opt PVOID UserContext
    );
#endif

Requisitos

   
Plataforma de Destino Windows
Cabeçalho dbghelp.h
Redistribuível DbgHelp.dll 5.1 ou posterior

Confira também

Funções DbgHelp

SymEnumSymbols

SymEnumerateSymbols64