如何检测已安装的Microsoft.Net Framework的版本
来源:互联网 发布:radialindicator.js 编辑:程序博客网 时间:2024/05/17 06:07
论坛里面有人问,假设某Windows机器上已安装了.Net Framework 3.5,如何判断有没有安装.Net Framework 3.5 SP1?
这个问题,我首先想到,每一个版本的.Net Framework的安装过程都会在Windows目录下的\Microsoft.NET\Framework目录中生成一个子目录(安装目录)。比如说,假设Windows目录在C盘且不曾在安装OS时重命名过Windows目录,那么.Net Framework 3.5的安装目录应该是:
C:\Windows\Microsoft.NET\Framework\v3.5
在这个目录下应该有一个该版本的MSBuild.exe,我们执行 MSBuild /version 应该能得到版本信息。
为了提高命令的适应性我们用 %WINDIR% 来代替 C:\Windows ,然后我们在控制台中执行下列命令:
cd %WINDIR%\Microsoft.NET\Framework\v3.5MSBuild /version
这样得到的输出信息里面就包含了这台计算机上.Net Framework 3.5的确切版本。
我的执行结果如下:
那么这个版本号 3.5.30729.5420 能否说明我们有没有安装.Net 3.5 SP1呢?我们查看这个地址:
What .NET Framework version numbers go with what service pack
http://blogs.msdn.com/b/astebner/archive/2005/07/12/438245.aspx
从这个列表中,我们可以看到,我们实际的版本号 3.5.30729.5420 应该是不小于.Net 3.5 SP1 的。
这是判断方法之一。
还有一种判断方法是从注册表来判断。在命令行中运行regedit,搜索“Net Framework Setup”:
这样我们就可以搜到这样的一个路径:
从这个搜索结果来看,我们能够在这个路径下看到我们安装过各个版本的 .Net Framework 的“芳踪”:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\
注意是在Windows 7上搜索的结果。我没有验证在Windows XP、Vista上这个路径会不会不一样。我猜测应该是一样的。
看样子遍历这个路径下的sub path就能够得到所有已安装的.Net Framework的版本信息。
在 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5 这个路径下,我们可以看到,版本(Version)是 3.5.30729.5420,与我们前面的判断方法结果一致。SP这一项的键值是 1,意思是已安装 SP1。
参考文献:
- What .NET Framework version numbers go with what service pack http://blogs.msdn.com/b/astebner/archive/2005/07/12/438245.aspx
- How to determine which versions and service pack levels of the Microsoft .NET Framework are installedhttp://support.microsoft.com/kb/318785
- [NSIS] Get .NET Version http://nsis.sourceforge.net/Get_.NET_Version
- 如何检测已安装的Microsoft.Net Framework的版本
- Microsoft .NET Framework 的版本
- Microsoft .NET Framework 的版本
- Microsoft .NET Framework 的版本
- Microsoft .NET FrameWork的版本
- Microsoft .NET Framework 的版本
- Microsoft .NET Framework 的版本
- 【回答】:Microsoft .NET Framework 各个版本之间的关系?如何安装2.0,3.0,4.0?向下兼容?
- Microsoft .NET Framework 各个版本之间的关系?如何安装2.0,3.0,4.0?向下兼容?
- 查看电脑已安装的.Net Framework版本
- 如何:检测是否已安装 .NET Framework 3.5
- Microsoft Visual Studio 检测到已安装的语言资源版本不匹配
- 如何查看机器上安装的.net framework版本
- 如何判断某版本的.NET Framework是否安装
- 如何判断某版本的.NET Framework是否安装
- 如何查看已安装的.NET Framwork版本
- Microsoft .NET Framework 版本
- Microsoft .NET Framework 各个版本之间的关系
- WM_DRAWITEM与DrawItem()的讨论
- 26字母起源二十六个英语字母的起源与含义
- Ubuntu进入文本模式后启动停在Checking battery state
- Ubuntu11.10 上安装CUDA开发环境
- Bitmap和Drawable相互转换方法
- 如何检测已安装的Microsoft.Net Framework的版本
- Ubuntu中Samba的安装配置和使用
- AndroidManifest
- oracle的系统和对象权限
- Gartner列出的2012年十大战略技术为
- 初涉Android蓝牙开发
- oracle timestamp(6)
- 编译错误LNK1104:无法打开文件“XXX.LIB”
- 西游记中的公司政治