IHostAssemblyStore

更新:2007 年 11 月

提供允许宿主独立于公共语言运行库 (CLR) 加载程序集和模块的方法。

interface IHostAssemblyStore: IUnknown {
    HRESULT ProvideAssembly (
        [in]  AssemblyBindInfo *pBindInfo,
        [out] UINT64           *pAssemblyId,
        [out] UINT64           *pHostContext,
        [out] IStream          **ppStmAssemblyImage,
        [out] IStream          **ppStmPDB
    );
    HRESULT ProvideModule (
        [in]  ModuleBindInfo   *pBindInfo,
        [out] DWORD            *pdwModuleId,
        [out] IStream          **ppStmModuleImage,
        [out] IStream          **ppStmPDB
    );
};

方法

方法

说明

IHostAssemblyStore::ProvideAssembly 方法

获取对不是由 ICLRAssemblyReferenceList(通过调用 IHostAssemblyManager::GetNonHostStoreAssemblies 返回)引用的程序集的引用。

IHostAssemblyStore::ProvideModule 方法

解析程序集中的模块或链接(但未嵌入)的资源文件。

备注

IHostAssemblyStore 为主机提供基于程序集标识有效加载程序集的方式。主机通过返回直接指向字节的 IStream 实例来加载程序集。

CLR 确定宿主是否在初始化时通过调用 IHostAssemblyManager::GetNonHostAssemblyStores 实现了 IHostAssemblyStore。这样,宿主可以控制到用户程序集的绑定,但需要依赖运行库绑定到 .NET Framework 程序集。

说明:

在提供 IHostAssemblyStore 的实现期间,主机指定希望对从 IHostAssemblyManager::GetNonHostStoreAssemblies 返回的 ICLRAssemblyReferenceList 未引用的所有程序集进行解析。

说明:

本机映像生成器 (Ngen.exe) 实用工具不同,.NET Framework 2.0 版不为宿主提供用于加载程序集本机映像的方法。

要求

**平台:**请参见 .NET Framework 系统要求

**头文件:**MSCorEE.idl

**库:**作为一项资源包含在 MSCorEE.dll 中

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

请参见

参考

ICLRAssemblyReferenceList

IHostAssemblyManager

其他资源

宿主接口