Freigeben über


PSYM_ENUMSYMBOLS_CALLBACK Rückruffunktion (dbghelp.h)

Eine anwendungsdefinierte Rückruffunktion, die mit der SymEnumerateSymbols64-Funktion verwendet wird. Es wird für jedes aufgezählte Symbol einmal aufgerufen und empfängt die Symbolinformationen.

Die PSYM_ENUMSYMBOLS_CALLBACK64 - und PSYM_ENUMSYMBOLS_CALLBACK64W-Typen definieren einen Zeiger auf diese Rückruffunktion. SymEnumerateSymbolsProc64 ist ein Platzhalter für den anwendungsdefinierte Funktionsnamen.

Hinweis Diese Funktion wird nur aus Kompatibilitätsgründen bereitgestellt. Anwendungen sollten SymEnumSymbols verwenden.
 

Syntax

PSYM_ENUMSYMBOLS_CALLBACK PsymEnumsymbolsCallback;

BOOL PsymEnumsymbolsCallback(
  [in]           PCSTR SymbolName,
  [in]           ULONG SymbolAddress,
  [in]           ULONG SymbolSize,
  [in, optional] PVOID UserContext
)
{...}

Parameter

[in] SymbolName

Der Name des Symbols. Der Name kann nicht ausgebucht werden, wenn die Option SYMOPT_UNDNAME mit der SymSetOptions-Funktion verwendet wird.

[in] SymbolAddress

Die virtuelle Adresse für den Anfang des Symbols.

[in] SymbolSize

Die Größe des Symbols in Bytes. Die Größe wird berechnet und ist tatsächlich ein Best-Guess-Wert. In einigen Fällen kann der Wert 0 sein.

[in, optional] UserContext

Der benutzerdefinierte Wert, der in SymEnumerateSymbols64 oder NULL angegeben ist. In der Regel wird dieser Parameter von einer Anwendung verwendet, um einen Zeiger an eine Datenstruktur zu übergeben, mit der die Rückruffunktion einen Typ von Kontext einrichten kann.

Rückgabewert

Wenn die Funktion TRUE zurückgibt, wird die Enumeration fortgesetzt.

Wenn die Funktion FALSE zurückgibt, wird die Enumeration beendet.

Hinweise

Die aufrufende Anwendung wird einmal pro Symbol aufgerufen, bis alle Symbole aufgelistet sind oder bis die Enumerationsrückruffunktion FALSE zurückgibt.

Diese Rückruffunktion ersetzt die PSYM_ENUMSYMBOLS_CALLBACK Rückruffunktion. PSYM_ENUMSYMBOLS_CALLBACK wird in Dbghelp.h wie folgt definiert.

#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define PSYM_ENUMSYMBOLS_CALLBACK PSYM_ENUMSYMBOLS_CALLBACK64
#define PSYM_ENUMSYMBOLS_CALLBACKW PSYM_ENUMSYMBOLS_CALLBACK64W
#else
typedef BOOL
(CALLBACK *PSYM_ENUMSYMBOLS_CALLBACK)(
    __in PCSTR SymbolName,
    __in ULONG SymbolAddress,
    __in ULONG SymbolSize,
    __in_opt PVOID UserContext
    );

typedef BOOL
(CALLBACK *PSYM_ENUMSYMBOLS_CALLBACKW)(
    __in PCWSTR SymbolName,
    __in ULONG SymbolAddress,
    __in ULONG SymbolSize,
    __in_opt PVOID UserContext
    );
#endif

Anforderungen

   
Zielplattform Windows
Kopfzeile dbghelp.h
Verteilbare Komponente DbgHelp.dll 5.1 oder höher

Weitere Informationen

DbgHelp-Funktionen

SymEnumSymbols

SymEnumerateSymbols64