Funzione SymGetSymFromAddr (dbghelp.h)

Individua il simbolo per l'indirizzo specificato.

Nota Questa funzione viene fornita solo per la compatibilità. Le applicazioni devono usare SymFromAddr.
 

Sintassi

BOOL IMAGEAPI SymGetSymFromAddr(
  [in]            HANDLE           hProcess,
  [in]            DWORD            dwAddr,
  [out, optional] PDWORD           pdwDisplacement,
  [in, out]       PIMAGEHLP_SYMBOL Symbol
);

Parametri

[in] hProcess

Handle per il processo passato originariamente alla funzione SymInitialize .

[in] dwAddr

Indirizzo per il quale deve essere individuato un simbolo. L'indirizzo non deve trovarsi sul limite di un simbolo. Se l'indirizzo viene dopo l'inizio di un simbolo e prima della fine del simbolo (l'inizio del simbolo più la dimensione del simbolo), viene trovato il simbolo.

[out, optional] pdwDisplacement

Spostamento dall'inizio del simbolo o zero.

[in, out] Symbol

Puntatore a una struttura IMAGEHLP_SYMBOL64 .

Valore restituito

Se la funzione ha esito positivo, il valore restituito è TRUE.

Se la funzione ha esito negativo, il valore restituito è FALSE. Per recuperare informazioni sull'errore estese, chiamare GetLastError.

Commenti

La funzione SymGetSymFromAddr64 individua il simbolo per un indirizzo specificato. I moduli vengono cercati nell'indirizzo a cui appartiene l'indirizzo. Quando il modulo viene trovato, viene cercata una corrispondenza nella tabella dei simboli. Quando viene trovato il simbolo, le informazioni sul simbolo vengono copiate nel buffer dei simboli fornito dal chiamante. Il chiamante deve allocare correttamente il buffer Symbol e compilare i parametri necessari nella struttura IMAGEHLP_SYMBOL64 prima di chiamare SymGetSymFromAddr64.

Tutte le funzioni DbgHelp, ad esempio questa, sono a thread singolo. Di conseguenza, le chiamate da più thread a questa funzione genereranno un comportamento imprevisto o un danneggiamento della memoria. Per evitare questo problema, è necessario sincronizzare tutte le chiamate simultanee da più thread a questa funzione.

Questa funzione sostituisce la funzione SymGetSymFromAddr . Per altre informazioni, vedere Aggiornamento del supporto della piattaforma. SymGetSymFromAddr è definito come segue in 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

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione dbghelp.h
Libreria Dbghelp.lib
DLL Dbghelp.dll
Componente ridistribuibile DbgHelp.dll 5.1 o versione successiva

Vedi anche

Funzioni DbgHelp

IMAGEHLP_SYMBOL64

SymFromAddr

SymInitialize