Marcadores

quarta-feira, 24 de agosto de 2011

ERROS DE SCRIPTS E SOLUÇÕES

Como alguns scripts demoram muito para serem executados, o Internet Explorer solicita que o usuário decida se deseja continuar executando o script de modo lento. É possível que alguns testes e parâmetros de comparação usem scripts que levem muito tempo para serem executados e, portanto, convém aumentar a quantidade de tempo antes que a caixa de mensagem seja exibida. No Internet Explorer, você pode alterar o valor do tempo limite do script em computadores cliente específicos modificando uma entrada do Registro.
Em algumas situações, uma página da Web pode conter scripts que levam um tempo extraordinariamente longo para serem executados. Se você estiver executando o script de um controle ActiveX em uma página da Web para transferir um arquivo muito grande ou fazer uma consulta em um banco de dados grande, poderá haver um atraso significativamente longo. O Internet Explorer 3.02 detecta o atraso longo e avisa o usuário por meio de uma caixa de diálogo que contém as seguintes informações:  
Esta página contém um script que está demorando muito tempo para ser concluído. Para finalizar esse script agora, clique em Cancelar.

Um script desta página está tornando o Internet Explorer lento. Se ele continuar sendo executado, seu computador poderá parar de responder. Deseja anular o script?

Tratamento de erros de script.

Um erro de script pode ocorrer por vários motivos. Alguns exemplos:
1) O operador esqueceu de preencher um Setpoint, e pressionou um botão;2) O script necessitava do valor de um tag de comunicação, porém a conexão com o CLP estava interrompida no momento;3) O script tentou escrever um registro em uma tabela, mas a conexão com o Banco estava interrompida no momento.
Para qualquer uma destas situações, o procedimento padrão do vbScript é: exibir uma mensagem de erro, e abortar o script.



Na maioria das vezes, isto se torna bastante inconveniente. O operador pode não entender o que aconteceu. Não se sabe se foi uma falha irrelevante, ou um erro gravíssimo.
Porém, o vbScript dispõe de recursos para que o desenvolvedor crie sua própria lógica de tratamento de erros. Mostraremos alguns deles abaixo.
On Error Resume Next
A instrução On Error serve para indicar qual ação deve ser tomada pelo VB. No caso de usarmos o “On Error Resume Next”, a ação a ser tomada será simplesmente seguir para a próxima linha. Ou seja, o erro de script é ignorado.
Isto vale para as linhas abaixo da instrução.
On Error Goto 0
Esta instrução anula o “On Error Resume Next”. Ou seja, nas linhas abaixo do “On Error Goto 0”, o erro de script terá o tratamento tradicional: mensagem de erro e script abortado.
Objeto “Err”
Este objeto representa o erro de script. Podemos usar suas propriedades para identificar o que aconteceu de errado na execução.
Para entender melhor, vamos usar um exemplo de tratamento de script:
‘A partir desta linha, os erros são ignoradosOn Error Resume Next
Application.GetObject("Dados.TagInexistente1").Value = 1Application.GetObject("Dados.TagInexistente2").Value = 1Application.GetObject("Dados.TagInexistente3").Value = 1‘…‘…
If Err.Number <> 0 thenMsgBox “Atenção: ocorreu um erro na execução deste script: “ & vbNewLine &_Err.Number & “-“ & Err.Description & vbNewLine & _“Entre em contato com o desenvolvedor responsável.”End If


Exit Sub
A instrução “Exit Sub” serve para abortar o script.
Vamos mostrar um exemplo de tratamento de script, mostrando que pode-se prever o erro de script sem usar as instruções citadas anteriormente.
If Screen.Item(“Setpoint1”).Value = “” thenMsgBox “Preencha o Setpoint antes de pressionar o botão!”Exit SubEnd If
‘...‘resto do script‘...
O exemplo acima resolveria a situação 1), citada no início do artigo.
Para mais informações sobre as instruções do vbScript, consulte o Guia de Referência do vbScript.


2 comentários:

  1. oiie,
    não entendi muito bem, mas quero saber qual script, tenho que deletar. Não aguento mais meu pc está muito lento e toda hora recebo uma mensagem, rteferente a uma dessas que estão aí acima.por favor me ajude deletar esse script
    obrigada,

    ResponderExcluir
  2. Olá, toda vez que acesso o faceboock, abre esse tal de script e quando clico em cancelar não acontece nada

    ResponderExcluir

Olá amigos; deixem seus comentários ou alguma pergunta relacionada a eletrônica ou informática para jjsound45@hotmail.com.