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 所指定的語言函式會進行下列呼叫序列:

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

規格需求

平台:請參閱系統需求

標題: MSCorEE.h

程式庫: MSCorEE.dll

.NET Framework版本:自 2.0 起可用

另請參閱