LockClrVersion 函数
允许主机在显式初始化公共语言运行时 (CLR) 之前确定将在进程中使用哪个 CLR 版本。
此函数在 .NET Framework 4 中已被弃用。
语法
HRESULT LockClrVersion (
[in] FLockClrVersionCallback hostCallback,
[in] FLockClrVersionCallback *pBeginHostSetup,
[in] FLockClrVersionCallback *pEndHostSetup
);
参数
hostCallback
[in] 初始化时由 CLR 调用的函数。
pBeginHostSetup
[in] 由主机调用以通知 CLR 初始化正在启动的函数。
pEndHostSetup
[in] 由主机调用以通知 CLR 初始化已完成的函数。
返回值
除以下值外,此方法还将返回 WinError.h 中定义的标准 COM 错误代码。
返回代码 | 说明 |
---|---|
S_OK | 该方法已成功完成。 |
E_INVALIDARG | 一个或多个参数为 null。 |
注解
主机在初始化 CLR 之前调用 LockClrVersion
。 LockClrVersion
采用三个参数,所有参数都是 FLockClrVersionCallback 类型的回调。 此类型定义如下:
typedef HRESULT ( __stdcall *FLockClrVersionCallback ) ();
初始化运行时时,将执行以下步骤:
主机调用 CorBindToRuntimeEx 或其他运行时初始化函数之一。 或者,主机可通过 COM 对象激活来初始化运行时。
运行时调用由
hostCallback
参数指定的函数。然后,由
hostCallback
指定的函数进行以下调用序列:由
pBeginHostSetup
参数指定的函数。CorBindToRuntimeEx
(或另一个运行时初始化函数)。由
pEndHostSetup
参数指定的函数。
从 pBeginHostSetup
到 pEndHostSetup
的所有调用都必须发生在具有相同逻辑堆栈的单个线程或纤程上。 此线程可以不同于调用 hostCallback
时的线程。
要求
平台:请参阅系统要求。
标头:MSCorEE.h
库:MSCorEE.dll
.NET Framework 版本:自 2.0 起可用