Freigeben über


SymEnumSymbolsW-Funktion (dbghelp.h)

Listet alle Symbole in einem Prozess auf.

Syntax

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

Parameter

[in] hProcess

Ein Handle für einen Prozess. Dieser Handle muss zuvor an die SymInitialize Funktion übergeben worden sein.

[in] BaseOfDll

Die Basisadresse des Moduls. Wenn dieser Wert null ist und Mask ein Ausrufezeichen (!)enthält, sieht die Funktion über Module hinweg. Wenn dieser Wert null ist und Mask- kein Ausrufezeichen enthält, verwendet die Funktion den Bereich, der durch die SymSetContext-funktion festgelegt wurde.

[in, optional] Mask

Eine Wildcardzeichenfolge, die die Namen der symbole angibt, die aufgezählt werden sollen. Der Text kann optional die Wildcards "*" und "?" enthalten.

Um ein bestimmtes Modul oder eine Gruppe von Modulen anzugeben, beginnen Sie den Text mit einer Platzhalterzeichenfolge, die das Modul angibt, gefolgt von einem Ausrufezeichen. Beim Angeben eines Moduls wird BaseOfDll- ignoriert.

Wert Bedeutung
foo
Wenn BaseOfDll- nicht null ist, sucht SymEnumSymbols- nach einem globalen Symbol namens "foo".

Wenn BaseOfDll- null ist, sucht SymEnumSymbols- innerhalb des Bereichs, der durch den letzten Aufruf der SymSetContext- funktion eingerichtet wurde, nach einem lokalen Symbol namens "foo".

foo?
Wenn BaseOfDll nicht null ist, sucht SymEnumSymbols nach einem globalen Symbol, das mit "foo" beginnt und danach ein zusätzliches Zeichen enthält, z. B. "Narr" und "Fuß".

Wenn BaseOfDll null ist, sucht SymEnumSymbols nach einem Symbol, das mit "foo" beginnt und danach ein zusätzliches Zeichen enthält, z. B. "Narr" und "Fuß". Die Suche würde sich innerhalb des Bereichs befinden, der durch den letzten Aufruf der SymSetContext--Funktion eingerichtet wurde.

foo*!bar
SymEnumSymbols- werden in jedem geladenen Modul angezeigt, das mit dem Text "foo" für ein Symbol namens "bar" beginnt. Es könnte Übereinstimmungen wie diese finden, "foot!bar", "footlocker!bar" und "nar!bar".
*!*
SymEnumSymbols alle Symbole in jedem geladenen Modul aufzählen.

[in] EnumSymbolsCallback

Eine SymEnumSymbolsProc Rückruffunktion, die die Symbolinformationen empfängt.

[in, optional] UserContext

Ein benutzerdefinierter Wert, der an die Rückruffunktion übergeben wird, oder NULL-. Dieser Parameter wird in der Regel von einer Anwendung verwendet, um einen Zeiger an eine Datenstruktur zu übergeben, die Kontext für die Rückruffunktion bereitstellt.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert TRUE.

Wenn die Funktion fehlschlägt, ist der Rückgabewert FALSE. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen abzurufen.

Bemerkungen

Alle DbgHelp-Funktionen, z. B. diese, sind single threaded. Daher führen Aufrufe von mehr als einem Thread zu dieser Funktion wahrscheinlich zu unerwartetem Verhalten oder Speicherbeschädigung. Um dies zu vermeiden, müssen Sie alle gleichzeitigen Aufrufe von mehr als einem Thread mit dieser Funktion synchronisieren.

Um die Unicode-Version dieser Funktion aufzurufen, definieren Sie DBGHELP_TRANSLATE_TCHAR.

Beispiele

Ein Beispiel finden Sie unter Enumerating Symbols.

Anmerkung

Der dbghelp.h-Header definiert SymEnumSymbols als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Zielplattform- Fenster
Header- dbghelp.h
Library Dbghelp.lib
DLL- Dbghelp.dll
redistributable DbgHelp.dll 5.1 oder höher

Siehe auch

DbgHelp-Funktionen

SymEnumSymbolsProc