共用方式為


IHostAssemblyManager::GetNonHostStoreAssemblies 方法

取得 ICLRAssemblyReferenceList 的介面指標,其表示主應用程式希望 Common Language Runtime (CLR) 載入的組件清單。

HRESULT GetNonHostStoreAssemblies (
    [out] ICLRAssemblyReferenceList **ppReferenceList
);

參數

  • ppReferenceList
    [out] ICLRAssemblyReferenceList 的位址指標,其包含主應用程式希望 CLR 載入的組件參考清單。

傳回值

HRESULT

描述

S_OK

GetNonHostStoreAssemblies 已成功傳回。

HOST_E_CLRNOTAVAILABLE

CLR 尚未載入至處理序中,或者此 CLR 目前的狀態無法執行 Managed 程式碼或成功處理呼叫。

HOST_E_TIMEOUT

呼叫已逾時。

HOST_E_NOT_OWNER

呼叫端不具備鎖定功能。

HOST_E_ABANDONED

已封鎖執行緒或 Fiber 在等候事件時,該事件已遭取消。

E_FAIL

發生未知的重大錯誤。 當方法傳回 E_FAIL 時,便無法在處理序內使用 CLR。 對裝載方法的後續呼叫會傳回 HOST_E_CLRNOTAVAILABLE。

E_OUTOFMEMORY

可用的記憶體不足,無法為要求的 ICLRAssemblyReferenceList 建立參考清單。

備註

CLR 會使用下列方針集合解析參考:

  • 首先,它會查閱 GetNonHostStoreAssemblies 傳回的組件參考清單。

  • 如果此組件出現在清單中,CLR 會正常與它繫結。

  • 如果組件未出現在清單中,而且主應用程式提供了 IHostAssemblyStore 實作,則 CLR 會呼叫 IHostAssemblyStore::ProvideAssembly,讓主應用程式提供要繫結的組件。

  • 否則,CLR 將無法繫結至組件。

如果主應用程式將 ppReferenceList 設定為 null,則 CLR 會先探查全域組件快取,然後呼叫 ProvideAssembly,再探查應用程式基底,以解析組件參考。

注意事項注意事項

CLR 會在初始化時呼叫 GetNonHostStoreAssemblies 一次 (只能一次)。不會再次呼叫此方法。

需求

**平台:**請參閱 .NET Framework 系統需求

**標頭:**MSCorEE.h

程式庫:包含做為 MSCorEE.dll 中的資源

**.NET Framework 版本:**4、3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0

請參閱

參考

ICLRAssemblyReferenceList 介面

IHostAssemblyManager 介面

IHostAssemblyStore 介面