我有一个网页,需要检测用户计算机上是否安装了.NET。我并不特别关心安装的.NET版本。检测通过Javascript完成。各种Google搜索指向在用户代理字符串中查找“.NET CLR”。这适用于几乎所有OS / IE / .NET组合。今天我找到了一个不起作用的。
在Windows XP SP3,IE 8和.NET 4.0下,我得到了以下用户代理:
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET4.0C; .NET4.0E)
在我简单地添加“.NET4.0”之类的检查之前,我想确认这是我应该为上面的浏览器/ OS / .NET组合获得的正确的用户代理字符串。该用户代理字符串是否正确?在考虑其他Windows OS / IE / .NET组合时,我应该寻找其他任何.NET标识符吗?
感谢。
答案 0 :(得分:0)
NET CLR确实是你应该寻找的。你可以通过javascript来检查它,你可以通过这种方式编码:
if ((navigator.userAgent.indexOf(".NET CLR")>-1))
alert ("CLR available " +navigator.userAgent);
else
alert(".NET SDK/Runtime is not available for us from within " + <BR> "your web browser or your web browser is not supported." + <BR> " Please check with http://msdn.microsoft.com/net/ for " + <BR> "appropriate .NET runtime for your machine.");
如下所示:detecting .net availability 小心坚韧,用户代理可以修改。即使是普通用户也很难做到