Share via


IHostAssemblyStore Interface

Provides methods that allow a host to load assemblies and modules independently of the common language runtime (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
    );
};

Methods

Method

Description

IHostAssemblyStore::ProvideAssembly Method

Gets a reference to an assembly that is not referenced by the ICLRAssemblyReferenceList returned from a call to IHostAssemblyManager::GetNonHostStoreAssemblies.

IHostAssemblyStore::ProvideModule Method

Resolves a module within an assembly or a linked (not embedded) resource file.

Remarks

IHostAssemblyStore provides a way for a host to load assemblies efficiently based on assembly identity. The host loads assemblies by returning IStream instances that point directly at the bytes.

The CLR determines whether a host has implemented IHostAssemblyStore by calling IHostAssemblyManager::GetNonHostAssemblyStores upon initialization. This allows the host, for example, to control binding to user assemblies, but to rely on the runtime to bind to .NET Framework assemblies.

Note

In providing an implementation of IHostAssemblyStore, the host specifies its intent to resolve all assemblies that are not referenced by the ICLRAssemblyReferenceList returned from IHostAssemblyManager::GetNonHostStoreAssemblies.

Note

The .NET Framework version 2.0 does not provide a way for the host to load the native image of an assembly, as provided by the Native Image Generator (Ngen.exe) utility.

Requirements

Platforms: See .NET Framework System Requirements.

Header: MSCorEE.idl

Library: Included as a resource in MSCorEE.dll

.NET Framework Versions: 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

See Also

Reference

ICLRAssemblyReferenceList Interface

IHostAssemblyManager Interface

Other Resources

Hosting Interfaces