检测是否已安装 .NET Framework 3.5的js脚本


Posted in Javascript onFebruary 14, 2009

本主题提供一个以 HTML/JavaScript 编写的脚本,管理员可以使用该脚本来确定系统上是否存在 .NET Framework 3.5。

<HTML> 
<HEAD> 
<TITLE>Test for the .NET Framework 3.5</TITLE> 
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8" /> 
<SCRIPT LANGUAGE="JavaScript"> 
<!-- 
var dotNETRuntimeVersion = "3.5.0.0"; function window::onload() 
{ 
if (HasRuntimeVersion(dotNETRuntimeVersion)) 
{ 
result.innerText = 
"This machine has the correct version of the .NET Framework 3.5." 
} 
else 
{ 
result.innerText = 
"This machine does not have the correct version of the .NET Framework 3.5." + 
" The required version is v" + dotNETRuntimeVersion + "."; 
} 
result.innerText += "\n\nThis machine's userAgent string is: " + 
navigator.userAgent + "."; 
} 
// 
// Retrieve the version from the user agent string and 
// compare with the specified version. 
// 
function HasRuntimeVersion(versionToCheck) 
{ 
var userAgentString = 
navigator.userAgent.match(/.NET CLR [0-9.]+/g); 
if (userAgentString != null) 
{ 
var i; 
for (i = 0; i < userAgentString.length; ++i) 
{ 
if (CompareVersions(GetVersion(versionToCheck), 
GetVersion(userAgentString[i])) <= 0) 
return true; 
} 
} 
return false; 
} 
// 
// Extract the numeric part of the version string. 
// 
function GetVersion(versionString) 
{ 
var numericString = 
versionString.match(/([0-9]+)\.([0-9]+)\.([0-9]+)/i); 
return numericString.slice(1); 
} 
// 
// Compare the 2 version strings by converting them to numeric format. 
// 
function CompareVersions(version1, version2) 
{ 
for (i = 0; i < version1.length; ++i) 
{ 
var number1 = new Number(version1[i]); 
var number2 = new Number(version2[i]); 
if (number1 < number2) 
return -1; 
if (number1 > number2) 
return 1; 
} 
return 0; 
} 
--> 
</SCRIPT> 
</HEAD> 
<BODY> 
<div id="result" /> 
</BODY> 
</HTML>

如果搜索“.NET CLR”版本成功,将显示以下类型的状态消息:
This machine has the correct version of the .NET Framework 3.5.
This machine's userAgent string is: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 1.1.4322; InfoPath.2; .NET CLR 3.0.590; .NET CLR 3.5.20726; MS-RTC LM 8).
否则,显示以下类型的状态消息:
This machine does not have the correct version of the .NET Framework 3.5. The required version is v3.5.0.0.
This machine's userAgent string is: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 1.1.4322; InfoPath.2; .NET CLR 3.0.590; MS-RTC LM 8).
Javascript 相关文章推荐
如何在父窗口中得知window.open()出的子窗口关闭事件
Oct 15 Javascript
js获取触发事件元素在整个网页中的绝对坐标(示例代码)
Dec 13 Javascript
详解javascript遍历方式
Nov 11 Javascript
对jquery的ajax进行二次封装以及ajax缓存代理组件:AjaxCache详解
Apr 11 Javascript
javascript滚轮控制模拟滚动条
Oct 19 Javascript
jQuery动态生成Bootstrap表格
Nov 01 Javascript
js实现固定宽高滑动轮播图效果
Jan 13 Javascript
Angular.JS实现无限级的联动菜单(使用demo)
Feb 08 Javascript
Vue中自定义全局组件的实现方法
Dec 08 Javascript
如何封装了一个vue移动端下拉加载下一页数据的组件
Jan 06 Javascript
JavaScript显式数据类型转换详解
Mar 18 Javascript
vue postcss-px2rem 自适应布局
May 15 Vue.js
Javascript 跨域访问解决方案
Feb 14 #Javascript
JavaScript DOM 添加事件
Feb 14 #Javascript
CSS+Table图文混排中实现文本自适应图片宽度(超简单+跨所有浏览器)
Feb 14 #Javascript
JavaScript实现动态增加文件域表单
Feb 12 #Javascript
从JavaScript 到 JQuery (1)学习小结
Feb 12 #Javascript
谷歌浏览器 insertCell与appendChild的区别
Feb 12 #Javascript
js 判断 enter 事件
Feb 12 #Javascript
You might like
PHP4.04简明安装
2006/10/09 PHP
收集的二十一个实用便利的PHP函数代码
2010/04/22 PHP
php中DOMDocument简单用法示例代码(XML创建、添加、删除、修改)
2010/12/19 PHP
php自定义函数call_user_func和call_user_func_array详解
2011/07/14 PHP
自定义php类(查找/修改)xml文档
2013/03/26 PHP
深入解析PHP垃圾回收机制对内存泄露的处理
2013/06/14 PHP
js 创建快捷方式的代码(fso)
2010/11/19 Javascript
JS获取计算机mac地址以及IP的实现方法
2014/01/08 Javascript
javascript实现控制文字大中小显示
2015/04/28 Javascript
JS定时器使用,定时定点,固定时刻,循环执行详解
2016/05/31 Javascript
全面理解JavaScript中的继承(必看)
2016/06/16 Javascript
Bootstrap导航条可点击和鼠标悬停显示下拉菜单的实现代码
2016/06/23 Javascript
Angularjs使用directive自定义指令实现attribute继承的方法详解
2016/08/05 Javascript
React Native实现简单的登录功能(推荐)
2016/09/19 Javascript
JavaScript中定时控制Throttle、Debounce和Immediate详解
2016/11/17 Javascript
Bootstrap实现导航栏的2种方式
2016/11/28 Javascript
javascript代码优化的8点总结
2018/01/29 Javascript
python实现读Excel写入.txt的方法
2018/04/29 Python
wxPython:python首选的GUI库实例分享
2019/10/05 Python
Python Handler处理器和自定义Opener原理详解
2020/03/05 Python
python numpy矩阵信息说明,shape,size,dtype
2020/05/22 Python
俄罗斯EPL钻石珠宝店:ЭПЛ
2019/10/22 全球购物
工程部经理岗位职责
2013/12/08 职场文书
店长助理岗位职责
2013/12/13 职场文书
大学生职业规划前言模板
2013/12/27 职场文书
前处理组长岗位职责
2014/03/01 职场文书
机械专业求职信
2014/05/25 职场文书
教师考察材料范文
2014/06/03 职场文书
信用卡结清证明怎么写
2014/09/13 职场文书
全国法院系统开展党的群众路线教育实践活动综述(全文)
2014/10/25 职场文书
优秀高中学生评语
2014/12/30 职场文书
2016党员干部反腐倡廉心得体会
2016/01/13 职场文书
《清澈的湖水》教学反思
2016/02/17 职场文书
Redis 哨兵集群的实现
2021/06/18 Redis
JavaScript流程控制(循环)
2021/12/06 Javascript
html5+实现plus.io进行拍照和图片等获取
2022/06/01 HTML / CSS