当前位置: 首页 > news >正文

杂七杂八(1)——如何查看本机的.NET Framework版本

今天上午Edward同学问我一个问题:如何知道自己本机安装的.NET Framework版本呢?
以前这个问题我也遇到过,那就是在写自动部署程序的时候,如果客户的机器已经安装了.NET Framework就不再安装。作为安装包的制作者,自己应该是知道程序是用哪个版本.NET Framework编译的。目前.NET Framework的版本有1.1(基本上已经退出舞台)、2.0.50727、3.0和3.5。
如何获取它们呢?
方法一:通过Visual Studio 2008的菜单项“Help”来查看(有点无厘头的办法)
方法二:在Visual Studio 2008 Command Prompt(或者.NET SDK的命令行工具) 里输入csc,然后回车(依然很无厘头、没什么实用价值)
方法三:从注册表里查
注册表其实就是一个大型的“键-值对列表”(Key-Value Pair List)。注册表中的键是以树状层级结构记录的,所以图标看起来像是一个“文件夹”;一个键下,可以有“值”,而可以有再下一级的键。值是有数据类型的,比如字符串型、数字型;每个值都有自己的“Value Name”和“Value Data”。所以:
如果: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727键下Value Name为 Install的值的Value Data等于1,则说明.NET Framework 2.0.50727已经安装。同理,检查 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0键和 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5键下的Install值的Value Data就知道是否安装了这两个版本。我估计,如果没有安装过3.0和3.5的话,这两个键是不会存在的,如果安装后又卸载了,键可能会在,Install的Value Data可能会是0。









本文转自 水之真谛 51CTO博客,原文链接:http://blog.51cto.com/liutiemeng/91636,如需转载请自行联系原作者

相关文章:

  • 根据当月数据库自动生成下个月数据库--3
  • Bootstrap3 排版-对齐
  • 用python操作mysql数据库(之简单“插入数据”操作)
  • 数学之高幂次取模
  • iOS 地图缩放级别问题
  • docker学习实践之路[第四站]利用pm2镜像部署node应用
  • 每天一个linux命令(10):cat 命令
  • [树莓派(raspberry pi)] 01、在linux环境下给树莓派安装系统及入门各种资料
  • 任何股市都受这三个因素
  • 【AngularJS入门】用ng-repeat指令实现循环输出
  • Linux下inotify监控文件夹状态,发生变化后触发rsync同步
  • 2016年开源巨献:来自百度的71款开源项目
  • 【MySQL使用技巧】JDBC连接
  • [pthon2.7+django1.2+sae]博客评论的异步提交
  • angular2 学习一 注解/Annotation
  • @angular/forms 源码解析之双向绑定
  • 002-读书笔记-JavaScript高级程序设计 在HTML中使用JavaScript
  • 4. 路由到控制器 - Laravel从零开始教程
  • ES6系统学习----从Apollo Client看解构赋值
  • go语言学习初探(一)
  • java取消线程实例
  • MySQL几个简单SQL的优化
  • Netty 4.1 源代码学习:线程模型
  • OpenStack安装流程(juno版)- 添加网络服务(neutron)- controller节点
  • V4L2视频输入框架概述
  • vue从创建到完整的饿了么(11)组件的使用(svg图标及watch的简单使用)
  • 持续集成与持续部署宝典Part 2:创建持续集成流水线
  • 关于Flux,Vuex,Redux的思考
  • 好的网址,关于.net 4.0 ,vs 2010
  • 记录:CentOS7.2配置LNMP环境记录
  • 简单数学运算程序(不定期更新)
  • 理清楚Vue的结构
  • 前端js -- this指向总结。
  • 深度解析利用ES6进行Promise封装总结
  • 深度学习中的信息论知识详解
  • 在Docker Swarm上部署Apache Storm:第1部分
  • Oracle Portal 11g Diagnostics using Remote Diagnostic Agent (RDA) [ID 1059805.
  • FaaS 的简单实践
  • 阿里云IoT边缘计算助力企业零改造实现远程运维 ...
  • ### Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException
  • #DBA杂记1
  • #NOIP 2014# day.1 生活大爆炸版 石头剪刀布
  • ${factoryList }后面有空格不影响
  • (9)YOLO-Pose:使用对象关键点相似性损失增强多人姿态估计的增强版YOLO
  • (C)一些题4
  • (八)Flask之app.route装饰器函数的参数
  • (四)linux文件内容查看
  • (转)大型网站架构演变和知识体系
  • ./mysql.server: 没有那个文件或目录_Linux下安装MySQL出现“ls: /var/lib/mysql/*.pid: 没有那个文件或目录”...
  • .Net MVC + EF搭建学生管理系统
  • .NET 常见的偏门问题
  • .NET/C# 编译期间能确定的相同字符串,在运行期间是相同的实例
  • .NET上SQLite的连接
  • .net之微信企业号开发(一) 所使用的环境与工具以及准备工作
  • .Net中的设计模式——Factory Method模式