SymRegisterFunctionEntryCallback-Funktion (dbghelp.h)
Registriert eine Rückruffunktion zur Verwendung durch die stapelbasierte Prozedur auf Alphacomputern.
Syntax
BOOL IMAGEAPI SymRegisterFunctionEntryCallback(
[in] HANDLE hProcess,
[in] PSYMBOL_FUNCENTRY_CALLBACK CallbackFunction,
[in] PVOID UserContext
);
Parameter
[in] hProcess
Ein Handle für den Prozess, der ursprünglich an die StackWalk64-Funktion übergeben wurde.
[in] CallbackFunction
Eine SymRegisterFunctionEntryCallbackProc64-Rückruffunktion .
[in] UserContext
Ein benutzerdefinierter Wert oder NULL. Dieser Wert wird einfach an die Rückruffunktion übergeben. Normalerweise wird dieser Parameter von einer Anwendung verwendet, um einen Zeiger an eine Datenstruktur zu übergeben, mit der die Rückruffunktion einen Kontext einrichten kann.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert TRUE.
Wenn die Funktion fehlschlägt, ist der Rückgabewert FALSE. Rufen Sie GetLastError auf, um erweiterte Fehlerinformationen abzurufen.
Hinweise
Die SymRegisterFunctionEntryCallback64-Funktion ermöglicht es einer Anwendung, eine Rückruffunktion für die Verwendung durch die stapelbasierte Prozedur zu registrieren. Die stapelbasierte Prozedur ruft die registrierte Rückruffunktion auf, wenn sie keinen Funktionstabelleneintrag für eine Adresse finden kann. In den meisten Fällen sucht die Stapel-Prozedur die Funktionstabelleneinträge in der Funktionstabelle des Bilds, das die Adresse enthält. In Situationen, in denen sich die Funktionstabelleneinträge jedoch nicht im Image befinden, ermöglicht dieser Rückruf dem Debugger, den Funktionstabelleneintrag aus einer anderen Quelle bereitzustellen. Beispielsweise kann laufzeitgenerierter Code auf Alphacomputern dynamische Funktionstabellen definieren, um die Ausnahmebehandlung und Stapelablaufverfolgung zu unterstützen.
Alle DbgHelp-Funktionen, z. B. diese, sind singlethreaded. Daher führen an diese Funktion gerichtete Aufrufe mehrerer Threads wahrscheinlich zu unerwartetem Verhalten oder einer Beschädigung des Speichers. Um dies zu vermeiden, müssen Sie alle an diese Funktion gerichteten gleichzeitigen Aufrufe mehrerer Threads synchronisieren.
Diese Funktion ersetzt die SymRegisterFunctionEntryCallback-Funktion . Weitere Informationen finden Sie unter Aktualisierte Plattformunterstützung. SymRegisterFunctionEntryCallback ist in Dbghelp.h wie folgt definiert.
#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymRegisterFunctionEntryCallback SymRegisterFunctionEntryCallback64
#else
BOOL
IMAGEAPI
SymRegisterFunctionEntryCallback(
__in HANDLE hProcess,
__in PSYMBOL_FUNCENTRY_CALLBACK CallbackFunction,
__in_opt PVOID UserContext
);
#endif
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | dbghelp.h |
Bibliothek | Dbghelp.lib |
DLL | Dbghelp.dll |
Verteilbare Komponente | DbgHelp.dll 5.1 oder höher |
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für