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.

NoteNote:

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.

NoteNote:

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: Windows 2000, Windows XP, Windows Server 2003 family

Header: MSCorEE.idl

Library: Included as a resource in MSCorEE.dll

.NET Framework Version: 2.0

See Also

Concepts

ICLRAssemblyReferenceList Interface

IHostAssemblyManager Interface

Hosting Interfaces