Freigeben über


SymGetModuleBase-Funktion (dbghelp.h)

Ruft die Basisadresse des Moduls ab, das die angegebene Adresse enthält.

Syntax

DWORD IMAGEAPI SymGetModuleBase(
  [in] HANDLE hProcess,
  [in] DWORD  dwAddr
);

Parameter

[in] hProcess

Ein Handle für den Prozess, der ursprünglich an die SymInitialize-Funktion übergeben wurde.

[in] dwAddr

Die virtuelle Adresse, die in einem der Module enthalten ist, die von der SymLoadModule64-Funktion geladen werden.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert eine virtuelle Adresse ohne Zero. Der Wert ist die Basisadresse des Moduls, die die durch den dwAddr-Parameter angegebene Adresse enthält.

Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Rufen Sie GetLastError auf, um erweiterte Fehlerinformationen abzurufen.

Hinweise

Die Modultabelle wird nach einem Modul gesucht, das dwAddr enthält. Das Modul wird basierend auf der Ladeadresse und der Größe der einzelnen Module lokalisiert.

Alle DbgHelp-Funktionen, z. B. diese, sind single threaded. 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 SymGetModuleBase-Funktion . Weitere Informationen finden Sie unter Aktualisierte Plattformunterstützung. SymGetModuleBase wird in DbgHelp.h wie folgt definiert.

#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymGetModuleBase SymGetModuleBase64
#else
DWORD
IMAGEAPI
SymGetModuleBase(
    __in HANDLE hProcess,
    __in DWORD dwAddr
    );
#endif

Anforderungen

   
Zielplattform Windows
Kopfzeile dbghelp.h
Bibliothek Dbghelp.lib
DLL Dbghelp.dll
Verteilbare Komponente DbgHelp.dll 5.1 oder höher

Weitere Informationen

DbgHelp-Funktionen

SymInitialize

SymLoadModule64