Jump to content
Fórum Script Brasil
  • 0

VBScript - ERRO DE SINTAXE(On Error Goto)


Müller Espósito

Question

Olá pessoal,

Meu nome é Müller, sou novo no fórum. Atualmente programo em VBA. Mas agora estou tentando aprender a fazer scripts para automatizar algumas tarefas como instalação de aplicativos e para outras necessidades que surgirem. Para isso comecei a estudar VBScript e SWH. Também estou estudando ActionScript, mas para outras finalidades.

Agora que já fiz minha apresentação irei postar minha primeira dúvida. Tenho o seguinte código em VBS:

dim oShell
dim Network
dim FSO

On Error Goto ERRO

set FSO = createobject("Scripting.FileSystemObject")

set Network = createobject("WScript.network")
Network.RemoveNetworkDrive "Z:", true, true
Network.MapNetworkDrive "Z:", "\\Servpro\f\projetos dom\Muller\Softwares"

WScript.Sleep 2000

set oShell = createobject("WScript.Shell")
oShell.run("Z:\SaveAsPDFandXPS.exe /quiet")
Do While CheckProcess("SaveAsPDFandXPS.exe") = True
    WScript.Sleep 500
Loop
Network.RemoveNetworkDrive "Z:", true, true

msgbox "Publish instalado com sucesso!"

Function CheckProcess(pProcess)
    Dim objWMIService , sComputer
    sComputer = "."
    Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & sComputer & "\root\cimv2")
    Set colProcesses = objWMIService.ExecQuery _
    ("Select * from Win32_Process Where Name = '" & pProcess & "'")

    If colProcesses.Count = 0 Then
  'process is not running.
      CheckProcess = False
    Else
  'process is not running.
      CheckProcess = True
    End If

End Function

ERRO:
    IF ERR.NUMBER <> 0 THEN
    msgbox "ERRO: " & err.number & chr(13) &
        "DESCRIÇÃO: " & err.description
    End if

Quando vou executa-lo da erro na linha 5 onde está a instrução "On Error Goto ERRO" no caractere 15, aonde começa a string ERRO.

Se eu comento o tratamento de erro o código funciona beleza, mas aí fica sem o tratamento de erro. Alguém pode me dizer o que tem de errado com a declaração de tratamento de erro?

Link to comment
Share on other sites

4 answers to this question

Recommended Posts

  • 0

Desculpe a falta de comentário no código. É que realmente ainda não criei este hábito de ta comentando o código. Mas pretendo trabalhar em cima disso.

Mas voltando a minha dúvida a questão de declarar o tipo de variável não ajuda no problema, pelo contrário, eu fui declarar o tipo da variável:

dim oShell as object
dim Network as object
dim FSO as object

e já deu erro na primeira linha na string "as". Não entendo isso... ¬¬

Link to comment
Share on other sites

  • 0

No VBScript, as variáveis são todas Variant, você não precisa (e nem pode) declarar o tipo dela.

On Error GoTo também não funciona no VBScript (On Error Resume Next deve dar certo).

Veja no segundo post desse tópico que o cara ensina uma técnica pra contornar esse problema, tratando o erro de pouco em pouco:

http://stackoverflow.com/questions/157747/...-error-handling

Link to comment
Share on other sites

  • 0
No VBScript, as variáveis são todas Variant, você não precisa (e nem pode) declarar o tipo dela.

On Error GoTo também não funciona no VBScript (On Error Resume Next deve dar certo).

Veja no segundo post desse tópico que o cara ensina uma técnica pra contornar esse problema, tratando o erro de pouco em pouco:

http://stackoverflow.com/questions/157747/...-error-handling

Obrigado pela resposta véi, vou utilizar essa dica aê.. Vlws!!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...