當調查應用程式問題時,通常需要先确認目标機器所安裝的 .NET Framework 的版本。可以通過如下方式來确認版本号:
<a href="http://www.cnblogs.com/gaochundong/p/how_to_determine_which_net_framework_versions_are_installed.html#query_by_control_panel">通過控制台安裝程式查詢</a>
<a href="http://www.cnblogs.com/gaochundong/p/how_to_determine_which_net_framework_versions_are_installed.html#query_by_registry">通過查詢系統資料庫擷取版本資訊</a>
<a href="http://www.cnblogs.com/gaochundong/p/how_to_determine_which_net_framework_versions_are_installed.html#query_by_installed_directory">通過檢視安裝目錄擷取版本資訊</a>
<a href="http://www.cnblogs.com/gaochundong/p/how_to_determine_which_net_framework_versions_are_installed.html#query_by_wmic">通過使用 WMI 指令擷取版本資訊</a>
在系統資料庫 regedit 中查找鍵:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full
得到如下結果:
對應結果如下:
Value of the Release
Version
378389
.NET Framework 4.5
378675
.NET Framework 4.5.1 installed with
Windows 8.1
378758
.NET Framework 4.5.1 installed on
Windows 8, Windows 7 SP1
379893
.NET Framework 4.5.2
On Windows 10 systems: 393295
On all other OS versions: 393297
.NET Framework 4.6
On Windows 10 November Update: 394254
On all other OS versions: 394271
.NET Framework 4.6.1
通常 .NET Framework 會被安裝在:
%WINDIR%\Microsoft.Net\Framework
而對應的結果通常是:
C:\Windows\Microsoft.NET\Framework
使用指令:
dir %WINDIR%\Microsoft.Net\Framework\v* /B
得到目錄結果:
但這僅列出了目錄,無法判斷是否安裝了 .NET 4.5 或 .NET 4.5.1 等,還需要直接檢視 DLL 版本詳細資訊。
比如,上圖中檢視了 mscorlib.dll 的版本号是 4.0.30319.34209,這代表什麼呢?
4.0.30319.1 = .NET 4.0 RTM
4.0.30319.269 = most common .NET 4.0 version
4.0.30319.544 = another .NET 4.0 version that a small portion
4.0.30319.17626 = .NET 4.5 RC
4.0.30319.17929 = .NET 4.5 RTM
4.0.30319.18010 = current version on my Windows 8 machine
4.0.30319.18052 = .NET 4.5 on Windows 7 SP1 64-bit
4.0.30319.18408 = .NET 4.5.1 on Windows 7 SP1 64-bit
4.0.30319.34209 = .NET 4.5.2 on Windows 7 PS1 64-bit
4.0.30319.34014 = .NET 4.5.1 on Windows 8.1 64-bit
4.0.30319.34209 = .NET 4.5.2 on Windows 8.1 64-bit
可以通過執行 wmic 指令來擷取版本号,指令如下:
wmic product where "Name like 'Microsoft .Net%'" get Name, Version
執行結果:
還可以通過 wmic 指令查詢目标機器上安裝的所有與 .NET 相關的微軟應用,指令如下:
wmic /namespace:\\root\cimv2 path win32_product where "Name like '%%.NET%%'" get Name, Version
<a href="http://blogs.msdn.com/b/dotnet/p/dotnet_sdks.aspx" target="_blank">.NET SDKs and Downloads</a>
<a href="http://msdn.microsoft.com/en-us/library/hh925568(v=vs.110).aspx" target="_blank">How to: Determine Which .NET Framework Versions Are Installed</a>
<a href="http://msdn.microsoft.com/en-us/library/hh925567(v=vs.110).aspx" target="_blank">How to: Determine Which .NET Framework Updates Are Installed</a>
本文轉自匠心十年部落格園部落格,原文連結:http://www.cnblogs.com/gaochundong/p/how_to_determine_which_net_framework_versions_are_installed.html,如需轉載請自行聯系原作者