错误消息:“当前页面的脚本导致 Internet Explorer 运行缓慢”

作者: nick 分类: as, flash, web 发布时间: 2012-01-07 00:44 ė 6没有评论

概要

由 于运行某些脚本可能需要较长的时间,因此 Internet Explorer 会提示用户决定是否要继续运行这些缓慢的脚本。 某些测试和基准可能使用了运行时间较长的脚本,并希望增加到消息框提示之前的等待时长。在 Internet Explorer 中,可以在特定的客户端计算机上通过修改注册表项更改脚本超时值。

更多信息

有时,网页包含需要很长时间来运行的脚本。如果您在某个网页上编写 ActiveX 控件的脚本以传输较大的文件或执行大型数据库查询,往往会造成显著的时间延迟。Internet Explorer 3.02 检测较长的延迟并用对话框提示用户阅读以下内容:

此页包含需要很长时间才能完成的脚本。要立即结束此脚本,请单击“取消”。

Internet Explorer 版本 4.0、5.0、6、7 和 8 的等效消息框显示以下内容:

当前页面的脚本导致 Internet Explorer 运行缓慢。如果继续运行,您的计算机可能会停止响应。是否要终止此脚本?

此机制允许用户停止意外进入无限循环的脚本,否则执行速度会十分缓慢。

在 Internet Explorer 3.02 中,此消息框可以在运行 Windows 95 的计算机上显示。版本 3.02 浏览器会特别查看最近五秒钟之内,脚本线程是否提示过任何窗口消息。对于 Internet Explorer 3.02,没有办法改写此超时期限。如果您正在使用带有长时间阻止运行期间的 ActiveX 控件,则此 ActiveX 控件应当使用事件机制并将控件返回调用者,或每五秒钟调用 PeekMessage 以重设超时值。

对于 Internet Explorer 4.0 或更高版本,超时值已不再是基于 Windows 消息的固定值。 对于带有脚本引擎的当前页,现在 Internet Explorer 跟踪执行的脚本语句总数并在每次启动新的脚本执行时(例如从超时或从事件处理程序中)重置此值。当该值超过阈值数时,Internet Explorer 显示“长时间运行脚本”对话框”。Internet Explorer 不会检查每条指令以查看它是否超出了限制。该脚本引擎定期轮询已执行的语句数以及 Internet Explorer,检查该数目是否已超出限制。如果整个脚本执行能够在脚本引擎轮询 Internet Explorer 之前完成,则由于此机制,可以在不出现对话框的情况下执行超出默认限制的次数。

若要我们为您在 Internet Explorer 4.0、5.0、6、7 或 8 中更改此超时值,请转到“帮我修复此问题”部分。如果您想亲自解决该问题,请转到“我自己修复此问题”部分。

帮我修复此问题

若要自动修复此问题,请单击“修复此问题”链接。单击“文件下载”对话框中的“运行”,并按照修复此问题向导中的步骤执行操作。

修复此问题
Microsoft Fix it 50403

注意

  • 此向导可能只适用于英文版本。但是,Windows 的其他语言版本也提供自动修复功能。
  • 如果所使用的计算机中并未出现此问题,则可将修复问题解决方案保存至闪存驱动器或 CD 中,然后在出现此问题的计算机上运行该解决方案。

下一步,请转到“此方法是否已修复问题?”部分。

我自己修复此问题

重要说明: 此部分、方法或任务包含有关如何修改注册表的步骤。但是,注册表修改不当可能会出现严重问题。因此,请一定严格按照下列步骤操作。为了获得进一步保护,请 在修改注册表之前对其进行备份。这样就可以在出现问题时还原注册表。有关如何备份和还原注册表的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

322756 如何在 Windows XP 中备份和还原注册表

若要在 Internet Explorer 4.0、5.0、6、7 或 8 中更改此超时值,请按照下列步骤操作:

  1. 使用注册表编辑器(例如 Regedt32.exe),请打开此项:
    HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Styles

    注意如果

    Styles

    项不存在,则创建名为

    Styles

    的新项。

  2. 在此项下创建名为“MaxScriptStatements”的新 DWORD 值并将此值设置为所需的脚本语句数。如果您不确定需要将此值设置为多少,则可以将其 DWORD 值设置为 0xFFFFFFFF 以完全避免对话框。

默认情况下,此项不存在。对于 Internet Explorer 4 或更高版本,如果尚未添加此项,则超时对话框的默认阈值限制为 5,000,000 句。

由于 Internet Explorer 4.0、5.0、6、7 和 8 超时基于执行的脚本语句数,因此在 ActiveX 控件或数据库访问延迟期间不会显示超时对话框。脚本中的无限循环仍会是检测的对象。

此方法是否已修复问题?

  • 检查该问题是否已修复。如果该问题已修复,则您已完成此部分。如果该问题未修复,则可以联系技术支持人员
  • 非常感谢您提供反馈意见。若要提供反馈意见或报告使用此解决方案出现的任何问题,请在“帮我修复此问题”博客中留言或向我们发送电子邮件

参考

有关 Internet Explorer 8 的速度、安全和适应性的详细信息,请访问以下 Microsoft 网站:


这篇文章中的信息适用于:
关键字:
kbfixme kbmsifixme kbcode kbFAQ kbhowto kbscript KB175500
Microsoft 和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均”依样”提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何 责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与 该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失 所导致的之损害、数据或利润不负任何责任。
原文:http://support.microsoft.com/kb/175500/zh-cn#FixItForMeAlways

本文出自 传播、沟通、分享,转载时请注明出处及相应链接。

本文永久链接: https://www.nickdd.cn/?p=1849

发表评论

您的电子邮箱地址不会被公开。

Ɣ回顶部