共用方式為


CLR 版本偵測技術範例

更新:2007 年 11 月

這個範例將示範如何偵測電腦上所安裝之 .NET Framework Common Language Runtime (CLR) 的版本。

如需使用這些範例的詳細資訊,請參閱下列主題:

Download sample

若要使用 Visual Studio 建置範例

  1. 開啟 [Windows 檔案總管],並巡覽至 CLRVerSample 目錄的 CP 子目錄。

  2. 按兩下 CLRVerCP.sln 的圖示,即可在 Visual Studio 2005 中開啟該檔案。

  3. 在 [建置] 功能表上,按一下 [建置方案]。

若要執行範例

  1. 在 [命令提示字元] 視窗中,巡覽至包含新可執行檔的目錄。

  2. 在命令列中輸入 CLRVer.exe。

需求

**.NET Framework 版本:**2.0、1.1

Microsoft Visual Studio 2005

這些範例需要 Windows 標頭,如果您使用 Microsoft Visual Studio 2005 (Visual Studio 2005 命令提示字元),或已安裝並在 Include 路徑中指定 Platform SDK,專案即可使用這些標頭。

備註

此範例僅適用於 C++。這個範例程式碼會呼叫定義於 mscoree.h 的 Unmanaged API (包含在 Windows Software Development Kit (SDK) 安裝目錄下的 \include 子目錄中),以列出安裝在此本機電腦上的 CLR 版本。

這個範例會呼叫 Unmanaged GetRequestedRuntimeInfo 函式 方法,該方法則會傳回已載入處理序之 CLR 版本的相關資訊。這項資訊不一定會顯示安裝於此電腦上的最新 CLR 版本。

在 .NET Framework 2.0 版中,您可以對 GetRequestedRuntimeInfo 函式 參數指定下列值以取得最新安裝的 CLR 版本:

  • 將前三個參數指定為 null。

  • 針對 runtimeInfoFlags 參數所指定 RUNTIME_INFO_FLAGS 列舉型別 (Enumeration) 中的 RUNTIME_INFO_UPGRADE_VERSION 旗標。

在下列狀況下,GetRequestedRuntimeInfo 函式 方法可能不會傳回最新的 CLR 版本:

  • 當存在用來指定載入特定 CLR 版本之應用程式組態檔時。請注意即使 pConfigurationFile 參數是指定為 null,.NET Framework 也會使用這個組態檔。

  • 當已呼叫 CorBindToRuntimeEx 函式 以指定舊版的 CLR 時。

  • 當目前執行的應用程式是針對舊版的 CLR 所編譯時。

請參閱

概念

執行階段主應用程式

參考

GetCORVersion 函式

其他資源

裝載 Common Language Runtime

Unmanaged API 參考