Artigo: 175500 - Última revisão: quarta-feira, 23 de Fevereiro de 2011 - Revisão: 7.0

Mensagem de erro: "Um script nesta página está a fazer com que o Internet Explorer seja executado de forma mais lenta"

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.
Expandir tudo | Reduzir tudo

Sumário

Visto que alguns scripts podem demorar longos períodos tempo a ser executados, o Internet Explorer solicita ao utilizador que decida se pretende continuar a executar o script lento. Alguns testes e benchmarks podem utilizar scripts que demoram muito tempo a ser executados e podem pretender aumentar o período de tempo antes de ser apresentada a caixa de mensagem. No Internet Explorer, o valor de tempo limite do script pode ser alterado em computadores cliente específicos modificando uma entrada do registo.

Mais Informação

Quando uma página Web contém script, existem situações em que este demora mais tempo do que o normal a ser executado. Se estiver a processar o script de um controlo ActiveX numa página Web para transferir um ficheiro muito grande ou consultar uma base de dados de grandes dimensões, é frequente que isto resulte numa demora significativamente longa. O Internet Explorer 3.02 detecta a longa demora e apresenta ao utilizador uma caixa de diálogo com o seguinte texto:

Esta página contém um script que está a demorar mais tempo do que o normal a concluir. Para interromper o script agora, clique em Cancelar.
A caixa de mensagem equivalente para as versões 4.0, 5.0, 6, 7 e 8 do Internet Explorer indica:

Um script nesta página está a fazer com que o Internet Explorer seja executado de forma mais lenta. Se continuar em execução, o computador poderá deixar de responder. Pretende interromper o script?
Este mecanismo permite que o utilizador interrompa o script insubordinado que esteja a ser executado num ciclo infinito ou cujo desempenho seja lento.

No Internet Explorer 3.02, é possível que seja apresentada esta caixa de mensagem em computadores com o Windows 95. O browser da versão 3.02 está especificamente a tentar verificar se o thread do script impediu a apresentação de mensagens do Windows nos últimos cinco segundos. Não existe qualquer método para contornar este período de tempo limite no Internet Explorer 3.02. Se estiver a utilizar um controlo ActiveX com longas operações de bloqueio, esse controlo ActiveX deverá utilizar um mecanismo de evento e devolver o controlo ao chamador ou solicitar PeekMessage a cada cinco segundos para repor o tempo limite.

Quando ao Internet Explorer 4.0 e versões posteriores, o tempo limite deixou de ser um valor fixo baseado em mensagens do Windows. O Internet Explorer já controla o número total de instruções de script executadas e repõe o valor sempre que é iniciada a execução de um novo script, como o resultante de um tempo limite ou de um processador de eventos, para a página actual com o motor de script. O Internet Explorer apresenta uma caixa de diálogo de "script de longa duração" quando esse valor for superior a um limiar. O Internet Explorer não verifica todas as instruções para detectar se estão acima do limite. Periodicamente, o motor de script consulta o Internet Explorer relativamente ao número de instruções executadas e o Internet Explorer verifica se este número está acima do limite. Com este mecanismo, é possível executar mais instruções do que o limite predefinido sem a apresentação da caixa de diálogo caso a execução completa do script termine antes do motor de script consultar o Internet Explorer.

Para nos solicitar a alteração deste valor de tempo limite no Internet Explorer 4.0, 5.0, 6, 7 ou 8, consulte a secção "Corrigir por mim". Se preferir corrigir o problema sozinho, consulte a secção "Deixar-me corrigir o problema".

Corrigir por mim



Para corrigir este problema automaticamente, clique no botão ou hiperligação Corrigir. Clique em Executar na caixa de diálogo Transferência de Ficheiros e siga os passos indicados no assistente de correcção.


Corrigir este problema
Correcção de problemas da Microsoft 50403


Notas
  • Este assistente pode apenas aplicar-se à versão em inglês; contudo, a correcção automática também funciona em versões do Windows noutros idiomas.
  • Se não estiver a trabalhar no computador que tem o problema, pode guardar a solução de correcção numa unidade flash ou num CD e, depois, executá-la no computador que tem o problema.

Em seguida, avance para a secção "O problema está corrigido?".



Deixar-me corrigir o problema

Importante: esta secção, método ou tarefa contém passos que explicam como modificar o registo. No entanto, poderão ocorrer problemas graves se modificar o registo de forma incorrecta. Assim, certifique-se de que segue estes passos cuidadosamente. Para uma maior segurança, efectue uma cópia de segurança do registo antes de o modificar. Deste modo, pode restaurar o registo se ocorrer um problema. Para mais informações sobre como efectuar uma cópia de segurança e restaurar o registo, clique no número de artigo que se segue para visualizar o artigo na Base de Dados de Conhecimento Microsoft:
322756  (http://support.microsoft.com/kb/322756/pt/ ) Como efectuar cópias de segurança e restaurar o registo no Windows


Para alterar este valor de tempo limite no Internet Explorer 4.0, 5.0, 6, 7 ou 8, siga estes passos:
  1. Se utilizar um editor de registo como o Regedt32.exe, abra esta chave:
    HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Styles

    Nota: se a chave
    Styles
    não existir, crie uma nova chave com o nome
    Styles
    .
  2. Crie um novo valor DWORD com o nome "MaxScriptStatements" nesta chave e defina o valor para o número de instruções de script pretendido. Se não tiver a certeza do valor necessário para esta definição, pode defini-lo para um valor DWORD de 0xFFFFFFFF para ignorar completamente a caixa de diálogo.
Por predefinição, a chave não existe. Se a chave não tiver sido adicionada, o limiar predefinido para a caixa de diálogo de tempo limite é de 5.000.000 instruções para o Internet Explorer 4.0 e posteriores.

Visto que o tempo limite do Internet Explorer 4.0, 5.0, 6, 7 e 8 está baseado no número de instruções de script executadas, a caixa de diálogo de tempo limite não será apresentada durante demoras relacionadas com o controlo ActiveX ou com o acesso a bases de dados. Os ciclos infinitos de script continuarão a ser detectados.

O problema está corrigido?

  • Verifique se o problema está corrigido. Se o problema estiver corrigido, terminou esta secção. Se o problema não estiver corrigido, pode contactar o suporte (http://support.microsoft.com/contactus) .
  • Agradecemos os seus comentários. Para enviar comentários ou comunicar problemas com esta solução, deixe um comentário no blogue "Corrigir por mim (http://blogs.technet.com/fixit4me/) " ou envie-nos uma mensagem de correio electrónico (mailto:fixit4me@microsoft.com?Subject=KB) .

Referências

Para mais informações sobre rapidez, segurança e adaptabilidade do Internet Explorer 8, visite o seguinte Web site da Microsoft:
http://www.microsoft.com/portugal/windows/internet-explorer/compare/mythbusting.aspx (http://www.microsoft.com/portugal/windows/internet-explorer/compare/mythbusting.aspx)
Palavras-chave: 
kbfixme kbmsifixme kbcode kbfaq kbhowto kbscript KB175500