Compartir a través de


Función SymEnumerateModules (dbghelp.h)

Enumera todos los módulos cargados para el proceso por la función SymLoadModule64 o SymLoadModuleEx .

Sintaxis

BOOL IMAGEAPI SymEnumerateModules(
  [in]           HANDLE                    hProcess,
  [in]           PSYM_ENUMMODULES_CALLBACK EnumModulesCallback,
  [in, optional] PVOID                     UserContext
);

Parámetros

[in] hProcess

Identificador del proceso que se pasó originalmente a la función SymInitialize .

[in] EnumModulesCallback

Función de devolución de llamada de enumeración. Esta función se llama una vez por módulo. Para obtener más información, vea SymEnumerateModulesProc64.

[in, optional] UserContext

Valor definido por el usuario o NULL. Este valor se pasa simplemente 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 ejecuta 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 SymEnumerateModules64 enumera todos los módulos cargados para el proceso por SymLoadModule64, incluso si la carga de símbolos se aplaza. Se llama a la función de devolución de llamada de enumeración una vez para cada módulo y se pasa la información del módulo.

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.

Para llamar a la versión Unicode de esta función, defina DBGHELP_TRANSLATE_TCHAR. SymEnumerateModulesW64 se define de la siguiente manera en Dbghelp.h.


BOOL
IMAGEAPI
SymEnumerateModulesW64(
    __in HANDLE hProcess,
    __in PSYM_ENUMMODULES_CALLBACKW64 EnumModulesCallback,
    __in_opt PVOID UserContext
    );

#ifdef DBGHELP_TRANSLATE_TCHAR
#define SymEnumerateModules64  SymEnumerateModulesW64
#endif

Esta función sustituye a la función SymEnumerateModules . Para obtener más información, consulte Compatibilidad con la plataforma actualizada. SymEnumerateModules se define de la siguiente manera en Dbghelp.h.

#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymEnumerateModules SymEnumerateModules64
#else
BOOL
IMAGEAPI
SymEnumerateModules(
    __in HANDLE hProcess,
    __in PSYM_ENUMMODULES_CALLBACK EnumModulesCallback,
    __in_opt PVOID UserContext
    );
#endif

Ejemplos

Para obtener un ejemplo, consulte Enumeración de módulos de símbolos.

Requisitos

Requisito Value
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

SymEnumerateModulesProc64

SymInitialize

SymLoadModule64