IE7在Vista上被检测为IE6 ...为什么?

时间:2020-03-06 14:58:57  来源:igfitidea点击:

我有两台Vista商业机器。我都安装了IE 7. 在我的第一台计算机(Computer1)上,如果我转到此站点(http://www.quirksmode.org/js/detect.html),则表示我正在使用" Windows上的Explorer 6"。如果我将Computer2与Vista Business和IE7一起使用,则表示我正在使用" Windows上的Explorer 7"。这是一个屏幕截图。两台计算机上都使用相同版本的IE。有人有解决办法吗?

解决方案

我们可以发布两台计算机的用户代理吗? (我们可以转到显示用户代理的某个网站,即该网站的最底部)。

我认为这是Quirksmode网站上的一个错误,与用户的意图相联系。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。.以后

我们是否在两台计算机上使用相同版本的IE7?
如果版本不同,则脚本可能由于某种原因而无法识别一个版本,而只是默认使用IE6作为最低公分母。
其中一台机器可能具有不完全遵循字母规则的IE版本,并且脚本难以处理它。

Computer1: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; InfoPath.2; .NET CLR 3.5.21022; .NET CLR 3.5.30729; .NET CLR 3.0.30618; MS-RTC LM 8; .NET CLR 1.1.4322) Rick Kierner (11 minutes ago)
Computer2: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506; InfoPath.2; .NET CLR 3.5.21022)  Rick Kierner (10 minutes ago)

在Computer1的用户代理中似乎有一些垃圾,它们重复了Mozilla / 4.0(兼容...)信息和MSIE 6.0信息(以及不匹配的右括号)。就是说,我通过链接到的页面上提供的脚本来运行用户代理,该脚本以Explorer 7的形式返回,因此我不确定为什么页面本身会失败。

无论如何,请在注册表中查看其他用户代理信息,这些信息可以在[[HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion
Internet Settings \ 5.0 \ User Agent](是的,即使我们具有Internet Explorer 7,它也位于" 5.0"下)。请注意,这是Windows XP中的位置,我假设它在Windows Vista中是相同的。

这只是一个猜测,但是我们显式发布的第一个字符串在查询字符串中具有" MSIE 6.0"。如果该站点是懒惰的,并且没有正确解析该字符串,则该字符串可能会覆盖前面的字符串中的" MSIE 7.0",从而给我们带来错误的结果。

检查注册表项
[HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Internet设置\用户代理\发布平台]

[HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Internet设置\ 5.0 \ User Agent \ Post平台]

某些软件会在此处添加其他值,这很好,除非我们指定用户代理字符串。在这种情况下,大多数浏览器检测将触发并检测其找到的最后一个值。

通常,这些值将在"用户代理"键或者"发布平台"键中。

我找到了注册表项:

HKEY_USERS \ S-1-5-21-817507923-1393677948-3603797094-1205 \ Software \ Microsoft \ Windows \ CurrentVersion \ Internet设置\ User Agent \ Post平台

它有

"Mozilla/4.0 (compatible; MSIE 6.0;
  Windows NT 5.1; SV1)"

价值。删除之后,我的浏览器被识别为IE 7.

我找到了IE6注册表项。我可以删除它而不会在我的PC上引起问题吗?
HKEY_USERS \ S-1-5-21-117609710-1647877149-839522115-1003 \ Software \ Microsoft \ Windows \ CurrentVersion \ Internet设置\ User Agent \ Post平台
我在其中找到以下内容:
Mozilla / 4.0(兼容; MSIE 6.0; Windows NT 5.1; SV1)

我已经安装了IE7,并且能够使用大多数facebook等项目。有人向我指出,我似乎同时激活了两个版本,如果不解决这个问题,可能会遇到问题。

我不希望删除注册表项,否则可能会导致一系列全新的问题!
谢谢