Condividi tramite


Funzione SymEnumSymbolsExW (dbghelp.h)

Enumera tutti i simboli in un processo.

Sintassi

BOOL IMAGEAPI SymEnumSymbolsExW(
  [in]           HANDLE                          hProcess,
  [in]           ULONG64                         BaseOfDll,
  [in, optional] PCWSTR                          Mask,
  [in]           PSYM_ENUMERATESYMBOLS_CALLBACKW EnumSymbolsCallback,
  [in, optional] PVOID                           UserContext,
  [in]           DWORD                           Options
);

Parametri

[in] hProcess

Handle per un processo. Questo handle deve essere stato passato in precedenza alla funzione SymInitialize.

[in] BaseOfDll

Indirizzo di base del modulo. Se questo valore è zero e Mask contiene un punto esclamativo (!), la funzione cerca tra i moduli. Se questo valore è zero e Mask non contiene un punto esclamativo, la funzione utilizza l'ambito stabilito dalla funzione SymSetContext.

[in, optional] Mask

Stringa con caratteri jolly che indica i nomi dei simboli da enumerare. Il testo può facoltativamente contenere caratteri jolly, "*" e "?".

Per specificare un modulo o un set specifico di moduli, iniziare il testo con una stringa con caratteri jolly che specifica il modulo, seguito da un punto esclamativo. Quando si specifica un modulo, BaseOfDll viene ignorato.

Valore Significato
foo
Se baseOfDll non è zero, SymEnumSymbols cercherà un simbolo globale denominato "foo".

Se baseOfDll è zero, SymEnumSymbols cercherà un simbolo locale denominato "foo" nell'ambito stabilito dalla chiamata più recente alla funzione SymSetContext.

foo?
Se baseOfDll non è zero, SymEnumSymbols cercherà un simbolo globale che inizia con "foo" e contiene successivamente un carattere aggiuntivo, ad esempio "fool" e "foot".

Se baseOfDll è zero, SymEnumSymbols cercherà un simbolo che inizia con "foo" e contiene successivamente un carattere aggiuntivo, ad esempio "fool" e "foot". La ricerca si trova nell'ambito stabilito dalla chiamata più recente alla funzione SymSetContext.

foo*!bar

SymEnumSymbols cercherà in ogni modulo caricato che inizia con il testo "foo" per un simbolo denominato "bar". Potrebbe trovare corrispondenze come queste, "foot!bar", "footlocker!bar" e "fool!bar".

*!*

SymEnumSymbols enumererà ogni simbolo in ogni modulo caricato.

[in] EnumSymbolsCallback

Una SymEnumSymbolsProcW funzione di callback che riceve le informazioni sul simbolo.

[in, optional] UserContext

Valore definito dall'utente passato alla funzione di callback o NULL. Questo parametro viene in genere usato da un'applicazione per passare un puntatore a una struttura di dati che fornisce il contesto per la funzione di callback.

[in] Options

Indica le opzioni possibili.

Valore Significato
SYMENUM_OPTIONS_DEFAULT
1
Usare le opzioni predefinite.
SYMENUM_OPTIONS_INLINE
2
Enumerare i simboli inline.

Valore restituito

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

Se la funzione non riesce, il valore restituito viene FALSE. Per recuperare informazioni sull'errore estese, chiamare GetLastError.

Osservazioni

Nota

L'intestazione dbghelp.h definisce SymEnumSymbolsEx come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
piattaforma di destinazione Finestre
intestazione dbghelp.h
libreria DbgHelp.lib
dll DbgHelp.dll
Ridistribuibile DbgHelp.dll 6.2 o versione successiva