共用方式為


LockClrVersion 函式

允許主應用程式判斷處理序中會先使用哪一個版本的 Common Language Runtime (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 指定的函式接著會產生下列呼叫順序:

所有來自 pBeginHostSetup 的 pEndHostSetup 呼叫都必須發生在具有相同邏輯堆疊的單一執行緒或 Fiber 上。 這個執行緒可以和呼叫 hostCallback 的執行緒不同。

需求

**平台:**請參閱 .NET Framework 系統需求

**標頭:**MSCorEE.h

**程式庫:**MSCorEE.dll

**.NET Framework 版本:**4、3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0

請參閱

其他資源

裝載全域靜態函式的 .NET Framework 1.1 和 2.0