GetModuleInformation-Funktion (psapi.h)
Ruft Informationen zum angegebenen Modul in der MODULEINFO-Struktur ab.
Syntax
BOOL GetModuleInformation(
[in] HANDLE hProcess,
[in] HMODULE hModule,
[out] LPMODULEINFO lpmodinfo,
[in] DWORD cb
);
Parameter
[in] hProcess
Ein Handle für den Prozess, der das Modul enthält.
Das Handle muss über die Zugriffsrechte PROCESS_QUERY_INFORMATION und PROCESS_VM_READ verfügen. Weitere Informationen finden Sie unter Prozesssicherheit und Zugriffsrechte.
[in] hModule
Ein Handle für das Modul.
[out] lpmodinfo
Ein Zeiger auf die MODULEINFO-Struktur , die Informationen zum Modul empfängt.
[in] cb
Die Größe der MODULEINFO-Struktur in Bytes.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.
Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Hinweise
Um Informationen für den aufrufenden Prozess abzurufen, übergeben Sie das von GetCurrentProcess zurückgegebene Handle.
Die GetModuleInformation-Funktion ruft keine Informationen für Module ab, die mit dem flag LOAD_LIBRARY_AS_DATAFILE geladen wurden. Weitere Informationen finden Sie unter LoadLibraryEx.
Ab Windows 7 und Windows Server 2008 R2 erstellt Psapi.h Versionsnummern für die PSAPI-Funktionen. Die PSAPI-Versionsnummer wirkt sich auf den Namen aus, der zum Aufrufen der Funktion und der Bibliothek verwendet wird, die ein Programm laden muss.
Wenn PSAPI_VERSION 2 oder höher ist, wird diese Funktion in Psapi.h als K32GetModuleInformation definiert und in Kernel32.lib und Kernel32.dll exportiert. Wenn PSAPI_VERSION 1 ist, wird diese Funktion in Psapi.h als K32GetModuleInformation definiert und in Psapi.lib exportiert und Psapi.dll als Wrapper, der K32GetModuleInformation aufruft.
Programme, die unter früheren Versionen von Windows sowie Windows 7 und höheren Versionen ausgeführt werden müssen, sollten diese Funktion immer als K32GetModuleInformation aufrufen. Um die korrekte Auflösung von Symbolen sicherzustellen, fügen Sie Dem TARGETLIBS-Makro Psapi.lib hinzu, und kompilieren Sie das Programm mit -DPSAPI_VERSION=1. Laden Sie Psapi.dll, um die dynamische Laufzeitverknüpfung zu verwenden.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | psapi.h |
Bibliothek | Kernel32.lib unter Windows 7 und Windows Server 2008 R2; Psapi.lib (wenn PSAPI_VERSION=1) unter Windows 7 und Windows Server 2008 R2; Psapi.lib unter Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP |
DLL | Kernel32.dll unter Windows 7 und Windows Server 2008 R2; Psapi.dll (wenn PSAPI_VERSION=1) unter Windows 7 und Windows Server 2008 R2; Psapi.dll unter Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP |