ICorProfilerInfo3::GetModuleInfo2 Metodu
Modül kimliği verilip modülün dosya adını, modülün üst derlemesinin kimliğini ve modülün özelliklerini açıklayan bit maskesini döndürür.
Sözdizimi
HRESULT GetModuleInfo2(
[in] ModuleID moduleId,
[out] LPCBYTE *ppBaseLoadAddress,
[in] ULONG cchName,
[out] ULONG *pcchName,
[out, annotation("__out_ecount_part(cchName, *pcchName)")]
WCHAR szName[] ,
[out] AssemblyID *pAssemblyId);
[out] DWORD *pdwModuleFlags);
Parametreler
moduleId
[in] Bilgilerin alınacağı modülün kimliği.
ppBaseLoadAddress
[out] Modülün yüklendiği temel adres.
cchName
[in] Dönüş arabelleğinin szName
karakter cinsinden uzunluğu.
pcchName
[out] Döndürülen modülün dosya adının toplam karakter uzunluğuna ilişkin bir işaretçi.
szName
[out] Çağıran tarafından sağlanan geniş karakter arabelleği. Yöntem döndürdüğünde, bu arabellek modülün dosya adını içerir.
pAssemblyId
[out] Modülün üst derlemesinin kimliğinin işaretçisi.
pdwModuleFlags
[out] modülün özelliklerini belirten COR_PRF_MODULE_FLAGS numaralandırmasından alınan değerlerin bit maskesi.
Açıklamalar
Dinamik modüller için parametresi modülün szName
meta veri adıdır ve temel adres 0 (sıfır) şeklindedir. Meta veri adı, meta verilerin içindeki Modül tablosundaki Ad sütunundaki değerdir. Bu, yönetilen kodun Module.ScopeName özelliği olarak ve yönetilmeyen meta veri istemci koduna IMetaDataImport::GetScopeProps yönteminin parametresi olarak szName
da sunulur.
Modülün GetModuleInfo2
kimliği mevcut olduğunda yöntemi çağrılsa da, profil oluşturucu ICorProfilerCallback::ModuleAttachedToAssembly geri çağırmasını alıncaya kadar üst derlemenin kimliği kullanılamaz.
Döndürdüğünde GetModuleInfo2
, arabelleğin modülün szName
tam dosya adını içerecek kadar büyük olduğunu doğrulamanız gerekir. Bunu yapmak için işaret eden pcchName
değeri parametresinin değeriyle karşılaştırın cchName
. değerinden büyük bir değere işaret edersepcchName
, daha büyük szName
bir arabellek ayırın, yeni, daha büyük boyutla güncelleştirin cchName
ve yeniden çağırınGetModuleInfo2
.cchName
Alternatif olarak, doğru arabellek boyutunu elde etmek için önce sıfır uzunluklu szName
bir arabellekle çağırabilirsinizGetModuleInfo2
. Ardından arabellek boyutunu içinde döndürülen pcchName
değere ayarlayabilir ve yeniden çağırabilirsiniz GetModuleInfo2
.
Gereksinimler
Platform: Bkz. Sistem Gereksinimleri.
Üstbilgi: CorProf.idl, CorProf.h
Kitaplığı: CorGuids.lib
.NET Framework Sürümleri: 4'ten beri kullanılabilir