SymEnumSymbolsForAddr function (dbghelp.h)

Enumerates the symbols for the specified address.


BOOL IMAGEAPI SymEnumSymbolsForAddr(
  [in]           HANDLE                         hProcess,
  [in]           DWORD64                        Address,
  [in]           PSYM_ENUMERATESYMBOLS_CALLBACK EnumSymbolsCallback,
  [in, optional] PVOID                          UserContext


[in] hProcess

A handle to a process. This handle must have been previously passed to the SymInitialize function.

[in] Address

The address for which symbols are to be located. The address does not have to be on a symbol boundary. If the address comes after the beginning of a symbol and before the end of the symbol (the beginning of the symbol plus the symbol size), the function will find the symbol.

[in] EnumSymbolsCallback

An application-defined callback function. This function is called for every symbol found at Address. For more information, see SymEnumSymbolsProc.

[in, optional] UserContext

Optional user-defined data. This value is passed to the callback function.

Return value

If the function succeeds, the return value is TRUE.

If the function fails, the return value is FALSE. To retrieve extended error information, call GetLastError.


All DbgHelp functions, such as this one, are single threaded. Therefore, calls from more than one thread to this function will likely result in unexpected behavior or memory corruption. To avoid this, you must synchronize all concurrent calls from more than one thread to this function.

To call the Unicode version of this function, define DBGHELP_TRANSLATE_TCHAR.


Requirement Value
Target Platform Windows
Header dbghelp.h
Library Dbghelp.lib
DLL Dbghelp.dll
Redistributable DbgHelp.dll 6.0 or later

See also

DbgHelp Functions