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 之前调用 LockClrVersionLockClrVersion 采用三个参数,所有参数都是 FLockClrVersionCallback 类型的回调。 此类型定义如下:

typedef HRESULT ( __stdcall *FLockClrVersionCallback ) ();  

初始化运行时时,将执行以下步骤:

  1. 主机调用 CorBindToRuntimeEx 或其他运行时初始化函数之一。 或者,主机可通过 COM 对象激活来初始化运行时。

  2. 运行时调用由 hostCallback 参数指定的函数。

  3. 然后,由 hostCallback 指定的函数进行以下调用序列:

pBeginHostSetuppEndHostSetup 的所有调用都必须发生在具有相同逻辑堆栈的单个线程或纤程上。 此线程可以不同于调用 hostCallback 时的线程。

要求

平台:请参阅系统要求

标头:MSCorEE.h

库:MSCorEE.dll

.NET Framework 版本:自 2.0 起可用

另请参阅