Udostępnij za pośrednictwem


ICorProfilerInfo::GetModuleInfo — Metoda

Biorąc pod uwagę identyfikator modułu, zwraca nazwę pliku modułu i identyfikator zestawu nadrzędnego modułu.

Składnia

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);  

Parametry

moduleId
[w] Identyfikator modułu, dla którego zostaną pobrane informacje.

ppBaseLoadAddress
[out] Adres podstawowy, pod którym załadowano moduł.

cchName
[w] Długość buforu powrotnego szName , w znakach.

pcchName
[out] Wskaźnik do całkowitej długości znaków zwracanej nazwy pliku modułu.

szName
[out] Bufor szerokiego znaku dostarczonego przez obiekt wywołujący. Gdy metoda zwróci metodę, ten bufor zawiera nazwę pliku modułu.

pAssemblyId
[out] Wskaźnik do identyfikatora zestawu nadrzędnego modułu.

Uwagi

W przypadku modułów dynamicznych szName parametr jest pustym ciągiem, a podstawowy adres to 0 (zero).

GetModuleInfo Mimo że metoda może być wywoływana zaraz po utworzeniu identyfikatora modułu, identyfikator zestawu nadrzędnego nie będzie dostępny, dopóki profiler nie otrzyma wywołania zwrotnego ICorProfilerCallback::ModuleAttachedToAssembly.

Po GetModuleInfo powrocie należy sprawdzić, czy szName bufor był wystarczająco duży, aby zawierał pełną nazwę pliku modułu. W tym celu porównaj wartość pcchName wskazującą wartość z wartością parametru cchName . Jeśli pcchName wskazuje wartość większą niż cchName, przydziel większy szName bufor, zaktualizuj cchName go przy użyciu nowego, większego rozmiaru i wywołaj GetModuleInfo ponownie.

Alternatywnie można najpierw wywołać GetModuleInfo bufor o zerowej długości szName , aby uzyskać prawidłowy rozmiar buforu. Następnie można ustawić rozmiar buforu na wartość zwróconą w pcchName i wywołać GetModuleInfo ponownie.

Wymagania

Platformy: Zobacz Wymagania systemowe.

Nagłówka: CorProf.idl, CorProf.h

Biblioteki: CorGuids.lib

.NET Framework wersje: dostępne od wersji 2.0

Zobacz też