ICorProfilerInfo::GetModuleInfo-Methode
Gibt für die übergebene Modul-ID den Dateinamen des Moduls und die ID der übergeordneten Assembly des Moduls zurück.
Syntax
HRESULT GetModuleInfo(
[in] ModuleID moduleId,
[out] LPCBYTE *ppBaseLoadAddress,
[in] ULONG cchName,
[out] ULONG *pcchName,
[out, size_is(cchName), length_is(*pcchName)]
WCHAR szName[] ,
[out] AssemblyID *pAssemblyId);
Parameter
moduleId
[in] Die ID des Moduls, für das Informationen abgerufen werden sollen.
ppBaseLoadAddress
[out] Die Basisadresse, an der das Modul geladen wird.
cchName
[in] Die Länge des szName
-Rückgabepuffers in Zeichen.
pcchName
[out] Ein Zeiger auf die gesamte Zeichenlänge des zurückgegebenen Dateinamens des Moduls.
szName
[out] Ein vom Aufrufer bereitgestellter Breitzeichenpuffer. Wenn die Methode abgeschlossen ist, enthält dieser Puffer den Dateinamen des Moduls.
pAssemblyId
[out] Ein Zeiger auf die ID der übergeordneten Assembly des Moduls.
Bemerkungen
Bei dynamischen Modulen ist der szName
Parameter ist eine leere Zeichenfolge, und die Basisadresse ist 0 (null).
Obwohl die GetModuleInfo
-Methode aufgerufen werden kann, sobald die Modul ID vorhanden ist, ist die ID der übergeordneten Assembly erst verfügbar, wenn der Profiler den ICorProfilerCallback::ModuleAttachedToAssembly-Rückruf empfangen hat.
Nachdem GetModuleInfo
abgeschlossen ist, müssen Sie überprüfen, ob der szName
-Puffer groß genug war, um den vollständigen Dateinamen des Moduls aufzunehmen. Vergleichen Sie zu diesem Zweck den Wert, auf den pcchName
verweist, mit dem Wert des Parameters cchName
. Wenn pcchName
auf einen Wert verweist, der größer als cchName
ist, weisen Sie einen größeren szName
-Puffer zu, aktualisieren Sie cchName
mit der neuen Größe, und rufen Sie GetModuleInfo
erneut auf.
Alternativ können Sie zuerst GetModuleInfo
mit einem szName
-Puffer der Länge 0 (NULL) aufrufen, um die richtige Puffergröße zu ermitteln. Sie können die Puffergröße dann auf den Wert festlegen, der von pcchName
zurückgegeben wurde, und GetModuleInfo
erneut aufrufen.
Anforderungen
Plattformen: Informationen finden Sie unter Systemanforderungen.
Header: CorProf.idl, CorProf.h
Bibliothek: CorGuids.lib
.NET Framework-Versionen: Seit 2.0 verfügbar.