以下实例显示了在浏览器中运行的 JavaScript 程序如何检测 .NET Framework 3.0 是否正在运行。该脚本将搜索用户代理字符串,并基于搜索结果显示状态消息。

 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Test for NET Framework 3.0</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<script type="text/javascript" language="JavaScript">
    
<!--
var RequiredFXVersion = "3.0.04131.06";
    
function window::onload()
    {
var foundVer = CheckRequiredFXVersion(RequiredFXVersion);
if (foundVer != null)
      {
result.innerHTML 
= "此计算机有正确版本的 .NET Framework:" + foundVer + "."+ "<br/>"
+ "此计算机的 userAgent 字符串为:" + navigator.userAgent + "";
      } 
else
      {
result.innerHTML 
= "此计算机没有正确版本的 
 .NET Framework。<br/>
"
+ "<a href='http://msdn.microsoft.com/windowsvista/default.aspx'>单击此处</a> "
+ "立即获得 .NET Framework 3.0。<br>"
+ "此计算机的 userAgent 字符串为:" + navigator.userAgent + "";
      }
    }
    
    
//
//
从用户代理字符串中检索可用版本
//
并检查它们是否与所需版本相匹配。
    //
function CheckRequiredFXVersion(requiredVersion)
    {
var userAgentString = navigator.userAgent.match(/\.NET CLR[ .][0-9.]+/g);
if (userAgentString != null)
      {
var i;
for (i = 0; i < userAgentString.length; ++i)
        {
var ver = userAgentString[i].slice(9);
if (CheckVersion(requiredVersion, ver))
return ver;
        }
      }
return null;
    }

    
//
//
检查某个特定版本是否为所需版本。
    //
function CheckVersion(requiredVersion, ver)
    {
requiredVersion 
= requiredVersion.split(".");
ver 
= ver.split(".");
      
//主要版本号必须严格匹配。
if (requiredVersion[0!= ver[0])
return false;
      
//次要版本号/版号必须不低于所需版本。
var i;
for (i = 1; i < requiredVersion.length && i < ver.length; i++)
      {
if (new Number(ver[i]) < new Number(requiredVersion[i]))
return false;
      }
return true;
    }
    
    
-->
</script>
</head>
<body>
<div id="result" />
</body>
</html>

如果成功搜索到字符串“.NET Framework 3.0”,将显示以下消息:

此计算机有正确版本的 .NET Framework:3.0.04131.06。

此计算机的 userAgent 字符串为:Mozilla/4.0(可兼容;MSIE 6.0;
Windows NT 5.1;SV1;.NET CLR 1.1.4322;.NET CLR 2.0.50727;.NET CLR 3.0.04131.06)。

否则,会显示以下消息:

此计算机没有正确版本的 .NET Framework。

单击此处立即获得 .NET Framework 3.0。

此计算机的 userAgent 字符串为:Mozilla/4.0(可兼容;MSIE 6.0;
Windows NT 5.1;SV1;.NET CLR 1.1.4322;InfoPath.1;.NET CLR 2.0.50727)。

相关文章:

  • 2021-06-30
  • 2021-05-16
  • 2021-06-22
  • 2021-11-16
  • 2022-02-15
  • 2021-12-13
  • 2021-07-10
猜你喜欢
  • 2021-06-27
  • 2022-12-23
  • 2021-11-09
  • 2021-10-29
  • 2022-12-23
  • 2021-11-21
相关资源
相似解决方案