Compartir a través de


Función SymEnumSymbolsEx (dbghelp.h)

Enumera todos los símbolos de un proceso.

Sintaxis

BOOL IMAGEAPI SymEnumSymbolsEx(
  [in]           HANDLE                         hProcess,
  [in]           ULONG64                        BaseOfDll,
  [in, optional] PCSTR                          Mask,
  [in]           PSYM_ENUMERATESYMBOLS_CALLBACK EnumSymbolsCallback,
  [in, optional] PVOID                          UserContext,
  [in]           DWORD                          Options
);

Parámetros

[in] hProcess

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

[in] BaseOfDll

Dirección base del módulo. Si este valor es cero y Mask contiene un signo de exclamación (!), la función busca en los módulos. Si este valor es cero y Mask no contiene un signo de exclamación, la función usa el ámbito establecido por la función SymSetContext .

[in, optional] Mask

Cadena comodín que indica los nombres de los símbolos que se van a enumerar. El texto puede contener opcionalmente los caracteres comodín, "*" y "?".

Para especificar un módulo específico o un conjunto de módulos, comience el texto con una cadena con caracteres comodín que especifica el módulo, seguido de un signo de exclamación. Al especificar un módulo, se omite BaseOfDll .

Valor Significado
Foo
Si BaseOfDll no es cero, SymEnumSymbols buscará un símbolo global denominado "foo".

Si BaseOfDll es cero, SymEnumSymbols buscará un símbolo local denominado "foo" dentro del ámbito establecido por la llamada más reciente a la función SymSetContext .

¿Foo?
Si BaseOfDll no es cero, SymEnumSymbols buscará un símbolo global que comience con "foo" y contendrá un carácter adicional después, como "tonto" y "pie".

Si BaseOfDll es cero, SymEnumSymbols buscará un símbolo que comience con "foo" y contendrá un carácter adicional después, como "tonto" y "pie". La búsqueda estaría dentro del ámbito establecido por la llamada más reciente a la función SymSetContext .

foo*!bar

SymEnumSymbols buscará en todos los módulos cargados que comiencen con el texto "foo" para un símbolo denominado "bar". Podría encontrar coincidencias como estas, "foot!bar", "footlocker!bar" y "fool!bar".

*!*

SymEnumSymbols enumerará todos los símbolos de cada módulo cargado.

[in] EnumSymbolsCallback

Función de devolución de llamada SymEnumSymbolsProc que recibe la información del símbolo.

[in, optional] UserContext

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

[in] Options

Indica las posibles opciones.

Valor Significado
SYMENUM_OPTIONS_DEFAULT
1
Use las opciones predeterminadas.
SYMENUM_OPTIONS_INLINE
2
Enumerar símbolos insertados.

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.

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado dbghelp.h
Library DbgHelp.lib
Archivo DLL DbgHelp.dll
Redistribuible DbgHelp.dll 6.2 o posterior