Función SymEnumSymbols (dbghelp.h)
Enumera todos los símbolos de un proceso.
Sintaxis
BOOL IMAGEAPI SymEnumSymbols(
[in] HANDLE hProcess,
[in] ULONG64 BaseOfDll,
[in, optional] PCSTR Mask,
[in] PSYM_ENUMERATESYMBOLS_CALLBACK EnumSymbolsCallback,
[in, optional] PVOID UserContext
);
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. Opcionalmente, el texto puede contener 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 especifique el módulo, seguido de un signo de exclamación. Al especificar un módulo, se omite BaseOfDll .
Valor | Significado |
---|---|
|
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 . |
|
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 comienza con "foo" y contiene 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 . |
|
SymEnumSymbols buscará en cada módulo cargado que comience con el texto "foo" para un símbolo denominado "bar". Podría encontrar coincidencias como estas, "foot!bar", "footlocker!bar" y "tonto!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.
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
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.
Ejemplos
Para obtener un ejemplo, consulte Enumeración de símbolos.
Requisitos
Plataforma de destino | Windows |
Encabezado | dbghelp.h |
Library | Dbghelp.lib |
Archivo DLL | Dbghelp.dll |
Redistribuible | DbgHelp.dll 5.1 o posterior |