Aracılığıyla paylaş


IHostAssemblyStore::ProvideModule Yöntemi

Bir derleme veya bağlantılı (ancak ekli olmayan) bir kaynak dosyası içindeki modülü çözümler.

Sözdizimi

HRESULT ProvideModule (  
    [in]  ModuleBindInfo *pBindInfo,  
    [out] DWORD          *pdwModuleId,  
    [out] IStream        **ppStmModuleImage,  
    [out] IStream        **ppStmPDB  
);  

Parametreler

pBindInfo
[in] İstenen modülün , derlemesinin ve modül AppDomainadının açıklandığı ModuleBindInfo örneğinin işaretçisi.

pdwModuleId
[out] Yüklenen modülü içeren için IStream benzersiz tanımlayıcıya yönelik bir işaretçi.

ppStmModuleImage
[out] Yüklenecek taşınabilir yürütülebilir (PE) görüntüyü içeren bir IStream nesnenin adresinin işaretçisi veya modül bulunamazsa null.

ppStmPDB
[out] İstenen modül için program hata ayıklama (PDB) bilgilerini içeren bir IStream nesnenin adresinin işaretçisi veya .pdb dosyası bulunamazsa null.

Dönüş Değeri

HRESULT Description
S_OK ProvideModule başarıyla döndürüldü.
HOST_E_CLRNOTAVAILABLE Ortak dil çalışma zamanı (CLR) bir işleme yüklenmemiş veya CLR yönetilen kodu çalıştıramadığı veya çağrıyı başarıyla işleyemediği bir durumda.
HOST_E_TIMEOUT Arama zaman aşımına uğradı.
HOST_E_NOT_OWNER Çağıranın kilidi yoktur.
HOST_E_ABANDONED Engellenen bir iş parçacığı veya fiber beklerken bir olay iptal edildi.
E_FAIL Bilinmeyen bir yıkıcı hata oluştu. Bir yöntem E_FAIL döndürdüğünde, CLR artık işlem içinde kullanılamaz. Barındırma yöntemlerine yapılan sonraki çağrılar HOST_E_CLRNOTAVAILABLE döndürür.
COR_E_FILENOTFOUND (0x80070002) İstenen derleme veya bağlı kaynak bulunamadı.
E_NOT_SUFFICIENT_BUFFER pdwModuleId konağın döndürmek istediği tanımlayıcıyı içerecek kadar büyük değil.

Açıklamalar

için pdwModuleId döndürülen kimlik değeri konak tarafından belirtilir. Tanımlayıcılar bir işlemin ömrü içinde benzersiz olmalıdır. CLR, ilişkili akışın benzersiz tanımlayıcısı olarak bu değeri kullanır. Her değeri, ProvideAssembly çağrısı tarafından döndürülen değerlerle pAssemblyId ve diğer çağrıları ProvideModuletarafından döndürülen değerlerle pdwModuleId karşılaştırarak denetler. Konak başka bir IStreamiçin aynı tanımlayıcı değerini döndürürse, CLR bu akışın içeriğinin zaten eşlenip eşlenmediğini denetler. Bu durumda CLR, yenisini eşlemek yerine görüntünün mevcut kopyasını yükler. Bu nedenle, tanımlayıcıdan döndürülen ProvideAssemblyderleme tanımlayıcılarıyla da çakışmamalıdır.

Gereksinimler

Platform: Bkz. Sistem Gereksinimleri.

Üstbilgi: MSCorEE.h

Kitaplığı: MSCorEE.dll'da kaynak olarak dahil edilen

.NET Framework Sürümleri: 2.0 sürümünden itibaren kullanılabilir

Ayrıca bkz.