Compartir a través de


Función SymEnumerateSymbols (dbghelp.h)

Enumera todos los símbolos de un módulo especificado.

Nota Esta función solo se proporciona por motivos de compatibilidad. Las aplicaciones deben usar SymEnumSymbols, que es más rápida y eficaz.
 

Sintaxis

DBHLP_DEPRECIATED BOOL IMAGEAPI SymEnumerateSymbols(
  [in]           HANDLE                    hProcess,
  [in]           ULONG                     BaseOfDll,
  [in]           PSYM_ENUMSYMBOLS_CALLBACK EnumSymbolsCallback,
  [in, optional] PVOID                     UserContext
);

Parámetros

[in] hProcess

Identificador del proceso. Este identificador debe haberse pasado previamente a la función SymInitialize .

[in] BaseOfDll

Dirección base del módulo para el que se van a enumerar los símbolos.

[in] EnumSymbolsCallback

Función de devolución de llamada que recibe la información del símbolo. Para obtener más información, vea SymEnumerateSymbolsProc64.

[in, optional] UserContext

Valor definido por el usuario o NULL. Este valor se pasa a la función de devolución de llamada. Normalmente, una aplicación usa este parámetro para pasar un puntero a una estructura de datos que permite que la función de devolución de llamada establezca algún tipo de contexto.

Valor devuelto

Si la función se realiza correctamente, el valor devuelto es TRUE.

Si se produce un error en la función, el valor devuelto es FALSE. Para recuperar información de error extendida, llame a GetLastError.

Comentarios

La función SymEnumerateSymbols64 enumera todos los símbolos del módulo especificado. La información del módulo se encuentra mediante el parámetro BaseOfDll . Se llama a la función de devolución de llamada una vez por símbolo y se pasa la información de cada símbolo.

Todas las funciones DbgHelp, como esta, son un único subproceso. Por lo tanto, es probable que las llamadas desde más de un subproceso a esta función producirán un comportamiento inesperado o daños en la memoria. Para evitarlo, debe sincronizar todas las llamadas simultáneas de más de un subproceso a esta función.

La versión Unicode de esta función, SymEnumerateSymbolsW64 se define como se indica a continuación en Dbghelp.h.


BOOL
IMAGEAPI
SymEnumerateSymbolsW64(
    __in HANDLE hProcess,
    __in ULONG64 BaseOfDll,
    __in PSYM_ENUMSYMBOLS_CALLBACK64W EnumSymbolsCallback,
    __in_opt PVOID UserContext
    );

Esta función sustituye a la función SymEnumerateSymbols . Para obtener más información, consulte Compatibilidad con la plataforma actualizada. SymEnumerateSymbols se define como se indica a continuación en Dbghelp.h.

#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymEnumerateSymbols SymEnumerateSymbols64
#define SymEnumerateSymbolsW SymEnumerateSymbolsW64
#else
BOOL
IMAGEAPI
SymEnumerateSymbols(
    __in HANDLE hProcess,
    __in ULONG BaseOfDll,
    __in PSYM_ENUMSYMBOLS_CALLBACK EnumSymbolsCallback,
    __in_opt PVOID UserContext
    );

BOOL
IMAGEAPI
SymEnumerateSymbolsW(
    __in HANDLE hProcess,
    __in ULONG BaseOfDll,
    __in PSYM_ENUMSYMBOLS_CALLBACKW EnumSymbolsCallback,
    __in_opt PVOID UserContext
    );
#endif

Requisitos

   
Plataforma de destino Windows
Encabezado dbghelp.h
Library Dbghelp.lib
Archivo DLL Dbghelp.dll
Redistribuible DbgHelp.dll 5.1 o posterior

Consulte también

Funciones de DbgHelp

SymEnumSymbols

SymEnumerateSymbolsProc64

SymInitialize