Funzione SymEnumerateSymbols (dbghelp.h)
Enumera tutti i simboli per un modulo specificato.
Sintassi
DBHLP_DEPRECIATED BOOL IMAGEAPI SymEnumerateSymbols(
[in] HANDLE hProcess,
[in] ULONG BaseOfDll,
[in] PSYM_ENUMSYMBOLS_CALLBACK EnumSymbolsCallback,
[in, optional] PVOID UserContext
);
Parametri
[in] hProcess
Handle per il processo. Questo handle deve essere stato passato in precedenza alla funzione SymInitialize .
[in] BaseOfDll
Indirizzo di base del modulo per il quale devono essere enumerati i simboli.
[in] EnumSymbolsCallback
Funzione di callback che riceve le informazioni sul simbolo. Per altre informazioni, vedere SymEnumerateSymbolsProc64.
[in, optional] UserContext
Valore definito dall'utente o NULL. Questo valore viene passato alla funzione di callback. In genere, questo parametro viene usato da un'applicazione per passare un puntatore a una struttura di dati che consente alla funzione di callback di stabilire un tipo di contesto.
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 SymEnumerateSymbols64 enumera tutti i simboli per il modulo specificato. Le informazioni sul modulo si trovano nel parametro BaseOfDll . La funzione di callback viene chiamata una volta per simbolo e viene passata le informazioni per ogni simbolo.
Tutte le funzioni DbgHelp, ad esempio questa, sono a thread singolo. Pertanto, le chiamate da più thread a questa funzione potrebbero causare un comportamento imprevisto o un danneggiamento della memoria. Per evitare questo problema, è necessario sincronizzare tutte le chiamate simultanee da più thread a questa funzione.
La versione Unicode di questa funzione, SymEnumerateSymbolsW64 è definita come segue in Dbghelp.h.
BOOL
IMAGEAPI
SymEnumerateSymbolsW64(
__in HANDLE hProcess,
__in ULONG64 BaseOfDll,
__in PSYM_ENUMSYMBOLS_CALLBACK64W EnumSymbolsCallback,
__in_opt PVOID UserContext
);
Questa funzione sostituisce la funzione SymEnumerateSymbols . Per altre informazioni, vedere Supporto della piattaforma aggiornato. SymEnumerateSymbols è definito come indicato di seguito in Dbghelp.h.
#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymEnumerateSymbols SymEnumerateSymbols64
#define SymEnumerateSymbolsW SymEnumerateSymbolsW64
#else
BOOL
IMAGEAPI
SymEnumerateSymbols(
__in HANDLE hProcess,
__in ULONG BaseOfDll,
__in PSYM_ENUMSYMBOLS_CALLBACK EnumSymbolsCallback,
__in_opt PVOID UserContext
);
BOOL
IMAGEAPI
SymEnumerateSymbolsW(
__in HANDLE hProcess,
__in ULONG BaseOfDll,
__in PSYM_ENUMSYMBOLS_CALLBACKW EnumSymbolsCallback,
__in_opt PVOID UserContext
);
#endif
Requisiti
Piattaforma di destinazione | Windows |
Intestazione | dbghelp.h |
Libreria | Dbghelp.lib |
DLL | Dbghelp.dll |
Componente ridistribuibile | DbgHelp.dll 5.1 o versioni successive |