ICLRMetaHost 接口

提供一些方法,这些方法基于公共语言运行时 (CLR) 的版本号返回特定版本的公共语言运行时,列出所有已安装的 CLR,列出在指定进程中加载的所有运行时,发现编译程序集所用的 CLR 版本,退出使用干净运行时关闭的进程,以及查询旧的 API 绑定。

方法

方法 说明
EnumerateInstalledRuntimes 方法 返回一个枚举,该枚举包含计算机上安装的每个 CLR 版本的有效 ICLRRuntimeInfo 接口指针。
EnumerateLoadedRuntimes 方法 返回一个枚举,该枚举包含在指定进程中加载的每个 CLR 的有效 ICLRRuntimeInfo 接口指针。 此方法可取代 GetVersionFromProcess
ExitProcess 方法 尝试正常关闭所有加载的运行时,然后终止进程。 取代 CorExitProcess 函数。
GetRuntime 方法 获取与特定 CLR 版本相对应的 ICLRRuntimeInfo 接口。 此方法取代了与 STARTUP_LOADER_SAFEMODE 标记一同使用的 CorBindToRuntimeEx 函数。
GetVersionFromFile 方法 获取程序集的原始 .NET Framework 编译版本(存储在元数据中)并指定其文件路径。 此方法可取得 GetFileVersion
QueryLegacyV2RuntimeBinding 方法 返回表示已绑定旧式激活策略的运行时的接口,例如通过使用 <startup> 元素配置文件项上的 useLegacyV2RuntimeActivationPolicy 属性、直接使用旧式激活 API 或通过调用 ICLRRuntimeInfo::BindAsLegacyV2Runtime 方法。
RequestRuntimeLoadedNotification 方法 当 CLR 版本首次加载但尚未启动时,保证对指定函数指针的回调。 此方法可取代 LockClrVersion

注解

获取此接口实例的唯一方法是调用 CLRCreateInstance 函数,如下所示:

ICLRMetaHost *pMetaHost = NULL;  
HRESULT hr = CLRCreateInstance(CLSID_CLRMetaHost,  
                   IID_ICLRMetaHost, (LPVOID*)&pMetaHost);  

要求

平台:请参阅系统要求

标头:MetaHost.h

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

.NET Framework 版本:自 4 起可用

另请参阅