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
);
};
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.
|
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
Reference
ICLRAssemblyReferenceList Interface
IHostAssemblyManager Interface
Other Resources
Hosting Interfaces