检测是否已安装 .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 相关文章推荐
ASP.NET jQuery 实例10 动态修改hyperlink的URL值
Feb 03 Javascript
javascript中数组的sort()方法的使用介绍
Dec 18 Javascript
Node.js中创建和管理外部进程详解
Aug 16 Javascript
JavaScript实现鼠标滑过图片变换效果的方法
Apr 16 Javascript
jquery实现的美女拼图游戏实例
May 04 Javascript
SWFUpload多文件上传及文件个数限制的方法
May 31 Javascript
AngularJS基础 ng-model 指令详解及示例代码
Aug 02 Javascript
jQuery插件HighCharts实现的2D面积图效果示例【附demo源码下载】
Mar 15 Javascript
详解html-webpack-plugin插件(用法总结)
Sep 12 Javascript
js实现简单掷骰子小游戏
Oct 24 Javascript
基于js实现判断浏览器类型代码实例
Jul 17 Javascript
Element-ui Layout布局(Row和Col组件)的实现
Dec 06 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
php源代码安装常见错误与解决办法分享
2013/05/28 PHP
服务器迁移php版本不同可能诱发的问题
2015/12/22 PHP
Ubuntu VPS中wordpress网站打开时提示”建立数据库连接错误”的解决办法
2016/11/03 PHP
jQuery实现图片向左向右切换效果的简单实例
2016/05/18 Javascript
Bootstrap按钮功能之查询按钮和重置按钮
2016/10/26 Javascript
xcode中获取js文件的路径方法(推荐)
2016/11/05 Javascript
BootstrapTable请求数据时设置超时(timeout)的方法
2017/01/22 Javascript
JavaScript正则替换HTML标签功能示例
2017/03/02 Javascript
使用Webpack提高Vue.js应用的方式汇总(四种)
2017/07/10 Javascript
JavaScript函数绑定用法实例分析
2017/11/14 Javascript
webpack4之SplitChunksPlugin使用指南
2018/06/12 Javascript
js实现各浏览器全屏代码实例
2018/07/03 Javascript
[02:16]完美世界DOTA2联赛PWL S3 集锦第三期
2020/12/21 DOTA
Django自定义分页与bootstrap分页结合
2021/02/22 Python
python使用pil进行图像处理(等比例压缩、裁剪)实例代码
2017/12/11 Python
python opencv3实现人脸识别(windows)
2018/05/25 Python
将Django项目部署到CentOs服务器中
2018/10/18 Python
python绘制热力图heatmap
2020/03/23 Python
为何人工智能(AI)首选Python?读完这篇文章你就知道了(推荐)
2019/04/06 Python
让你Python到很爽的加速递归函数的装饰器
2019/05/26 Python
PyTorch的深度学习入门之PyTorch安装和配置
2019/06/27 Python
Python实现搜索算法的实例代码
2020/01/02 Python
如何使用PyCharm将代码上传到GitHub上(图文详解)
2020/04/27 Python
Python安装第三方库攻略(pip和Anaconda)
2020/10/15 Python
Myprotein芬兰官网:欧洲第一运动营养品牌
2019/05/05 全球购物
输入N,打印N*N矩阵
2012/02/20 面试题
护理个人求职信范文
2014/01/08 职场文书
幼儿教师思想汇报
2014/01/10 职场文书
逃课上网检讨书
2014/02/20 职场文书
副乡长民主生活会个人对照检查材料思想汇报
2014/10/01 职场文书
食品安全主题班会
2015/08/13 职场文书
基于Python的EasyGUI学习实践
2021/05/07 Python
Golang 获取文件md5校验的方法以及效率对比
2021/05/08 Golang
原生JS实现飞机大战小游戏
2021/06/09 Javascript
Java并发编程之详解CyclicBarrier线程同步
2021/06/23 Java/Android
解决MySQL添加新用户-ERROR 1045 (28000)的问题
2022/03/03 MySQL