Función SymGetSymFromAddr (dbghelp.h)
Busca el símbolo de la dirección especificada.
Sintaxis
BOOL IMAGEAPI SymGetSymFromAddr(
[in] HANDLE hProcess,
[in] DWORD dwAddr,
[out, optional] PDWORD pdwDisplacement,
[in, out] PIMAGEHLP_SYMBOL Symbol
);
Parámetros
[in] hProcess
Identificador del proceso que se pasó originalmente a la función SymInitialize .
[in] dwAddr
Dirección para la que se va a ubicar un símbolo. La dirección no tiene que estar en un límite de símbolos. Si la dirección viene después del principio de un símbolo y antes del final del símbolo (el principio del símbolo más el tamaño del símbolo), se encuentra el símbolo.
[out, optional] pdwDisplacement
Desplazamiento desde el principio del símbolo o cero.
[in, out] Symbol
Puntero a una estructura de IMAGEHLP_SYMBOL64 .
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 SymGetSymFromAddr64 busca el símbolo de una dirección especificada. Los módulos se buscan en el que pertenece la dirección. Cuando se encuentra el módulo, se busca una coincidencia en su tabla de símbolos. Cuando se encuentra el símbolo, la información del símbolo se copia en el búfer símbolo proporcionado por el autor de la llamada. El autor de la llamada debe asignar correctamente el búfer de símbolos y rellenar los parámetros necesarios en la estructura IMAGEHLP_SYMBOL64 antes de llamar a SymGetSymFromAddr64.
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.
Esta función sustituye a la función SymGetSymFromAddr . Para obtener más información, consulte Compatibilidad con la plataforma actualizada. SymGetSymFromAddr se define de la siguiente manera en Dbghelp.h.
#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymGetSymFromAddr SymGetSymFromAddr64
#else
BOOL
IMAGEAPI
SymGetSymFromAddr(
__in HANDLE hProcess,
__in DWORD dwAddr,
__out_opt PDWORD pdwDisplacement,
__inout PIMAGEHLP_SYMBOL Symbol
);
#endif
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Windows |
Encabezado | dbghelp.h |
Library | Dbghelp.lib |
Archivo DLL | Dbghelp.dll |
Redistribuible | DbgHelp.dll 5.1 o posterior |