SymGetSymFromAddr64-Funktion (dbghelp.h)
Sucht das Symbol für die angegebene Adresse.
Syntax
BOOL IMAGEAPI SymGetSymFromAddr64(
[in] HANDLE hProcess,
[in] DWORD64 qwAddr,
[out, optional] PDWORD64 pdwDisplacement,
[in, out] PIMAGEHLP_SYMBOL64 Symbol
);
Parameter
[in] hProcess
Ein Handle für den Prozess, der ursprünglich an die SymInitialize-Funktion übergeben wurde.
[in] qwAddr
Die Adresse, für die ein Symbol gefunden werden soll. Die Adresse muss sich nicht an einer Symbolgrenze befindet. Wenn die Adresse nach dem Anfang eines Symbols und vor dem Ende des Symbols (dem Anfang des Symbols plus der Symbolgröße) kommt, wird das Symbol gefunden.
[out, optional] pdwDisplacement
Die Verschiebung vom Anfang des Symbols oder null.
[in, out] Symbol
Ein Zeiger auf eine IMAGEHLP_SYMBOL64-Struktur .
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 SymGetSymFromAddr64-Funktion sucht das Symbol für eine angegebene Adresse. Die Module werden nach dem gesucht, zu dem die Adresse gehört. Wenn das Modul gefunden wird, wird seine Symboltabelle nach einer Übereinstimmung durchsucht. Wenn das Symbol gefunden wird, werden die Symbolinformationen in den vom Aufrufer bereitgestellten Symbolpuffer kopiert. Der Aufrufer muss den Symbolpuffer ordnungsgemäß zuordnen und die erforderlichen Parameter in der IMAGEHLP_SYMBOL64-Struktur eingeben, bevor SymGetSymFromAddr64 aufgerufen wird.
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 SymGetSymFromAddr-Funktion . Weitere Informationen finden Sie unter Aktualisierte Plattformunterstützung. SymGetSymFromAddr ist in Dbghelp.h wie folgt definiert.
#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymGetSymFromAddr SymGetSymFromAddr64
#else
BOOL
IMAGEAPI
SymGetSymFromAddr(
__in HANDLE hProcess,
__in DWORD dwAddr,
__out_opt PDWORD pdwDisplacement,
__inout PIMAGEHLP_SYMBOL Symbol
);
#endif
Anforderungen
Zielplattform | Windows |
Kopfzeile | dbghelp.h |
Bibliothek | Dbghelp.lib |
DLL | Dbghelp.dll |
Verteilbare Komponente | DbgHelp.dll 5.1 oder höher |