Aracılığıyla paylaş


ICorProfilerCallback6::GetAssemblyReferences Method

[.NET Framework 4.5.2 ve sonraki sürümlerde desteklenir]

Ortak dil çalışma zamanı derleme başvurusu kapatma adımları gerçekleştirdiğinde, profil oluşturucuya derlemenin çok erken yükleme aşamasında olduğunu bildirir.

Syntax

HRESULT GetAssemblyReferences(        [in, string] const WCHAR* wszAssemblyPath,
        [in] ICorProfilerAssemblyReferenceProvider* pAsmRefProvider
);

Parameters

wszAssemblyPath [in] Meta verileri değiştirilecek derlemenin yolu ve adı.

pAsmRefProvider [in] Eklenecek derleme başvurularını belirten ICorProfilerAssemblyReferenceProvider arabiriminin adresine yönelik bir işaretçi.

Return Value

Bu geri çağırmadan döndürülen değerler yoksayılır.

Remarks

Bu geri çağırma, ICorProfilerCallback5::SetEventMask2 yöntemi çağrılırken COR_PRF_HIGH_ADD_ASSEMBLY_REFERENCES olay maskesi bayrağı ayarlanarak denetlenir. Profil oluşturucu ICorProfilerCallback6::GetAssemblyReferences geri çağırma yöntemine kaydolursa, çalışma zamanı yüklenecek derlemenin yolunu ve adını ve bu yönteme ICorProfilerAssemblyReferenceProvider arabirim nesnesinin işaretçisini geçirir. Profil oluşturucu daha sonra ICorProfilerAssemblyReferenceProvider::AddAssemblyReference yöntemini, geri çağırmada GetAssemblyReferences belirtilen derlemeden başvurmayı planladığı her hedef derleme için bir COR_PRF_ASSEMBLY_REFERENCE_INFO nesneyle çağırabilir.

Geri çağırmayı GetAssemblyReferences yalnızca profil oluşturucunun derleme başvuruları eklemek için bir derlemenin meta verilerini değiştirmesi gerekiyorsa kullanın. (Ancak, derlemenin meta verilerinin gerçek değişikliğinin ICorProfilerCallback::ModuleLoadFinishedgeri çağırma yönteminde yapıldığını unutmayın.) Profil oluşturucu, ortak dil çalışma zamanına (CLR) modül yüklendiğinde derleme başvurularının ekleneceğini bildirmek için geri çağırma yöntemini uygulamalıdır GetAssemblyReferences . Bu, profil oluşturucu daha sonra meta veri derleme başvurularını değiştirmeyi planlasa da, bu erken aşamada CLR tarafından alınan derleme paylaşımı kararlarının geçerli kalmasını sağlamaya yardımcı olur. Bu, profil oluşturucu meta veri değişikliklerinin hataya SECURITY_E_INCOMPATIBLE_SHARE neden olduğu bazı örnekleri önleyebilir.

Profil oluşturucu, CLR derleme başvurusu kapatma yürütücüsuna derleme başvuruları eklemek için bu yöntem tarafından sağlanan ICorProfilerAssemblyReferenceProvider nesnesini kullanır. ICorProfilerAssemblyReferenceProvider nesnesi yalnızca bu geri çağırmanın içinden kullanılmalıdır. Bu geri çağırmadan ICorProfilerAssemblyReferenceProvider::AddAssemblyReference yöntemine yapılan çağrılar değiştirilmiş meta veriyle sonuçlanmaz, ancak yalnızca değiştirilmiş derleme başvurusu kapatma kılavuzunda sonuçlanır. Profil oluşturucunun, geri çağırmayı uygulasa GetAssemblyReferences bile başvuran derleme için ICorProfilerCallback::ModuleLoadFinished geri çağırmasının içinden derleme başvurularını açıkça eklemek için yine de bir IMetaDataAssemblyEmit nesnesi kullanması gerekir.

Profil oluşturucu aynı derleme için bu geri çağırmaya yinelenen çağrılar almaya hazır olmalı ve bu tür yinelenen çağrıların her biri için aynı şekilde yanıt vermelidir (aynı ICorProfilerAssemblyReferenceProvider::AddAssemblyReference çağrıları kümesini yaparak).

Requirements

Platformlar: Bkz. Sistem Gereksinimleri.

Üstbilgi: CorProf.idl, CorProf.h

Library: CorGuids.lib

.NET Framework Sürümleri: 4.5.2'den itibaren kullanılabilir

See also