在执行过程中处理VBScript中的错误

问题描述:

寻找在VBscript中处理错误处理的一些帮助。在执行过程中处理VBScript中的错误

我想要做的是告诉脚本,如果在应该重新运行脚本的命令之一发生错误。基本上我只是压缩一些文件并将其复制到共享驱动器,然后在完成复制后删除原始副本。现在,如果在压缩或复制过程中发生错误,我不希望脚本的其余部分运行并让它删除这些文件。所以我只需要脚本重新开始。

目前我所做的只是打印出一个回显,表示“发生了一个错误重新运行脚本”,但这将作为一个计划任务完成,所以我真的需要它自动执行。我只是不确定语法是如何工作的,或者甚至是可能的。

我看到“On Error Resume Next”,但不确定这是怎么回事我应该写这个。我不认为我应该使用它,因为我不想让脚本继续,如果发生错误我只是希望它从头再次开始。

这是它看起来像此刻:

Command2 = "Robocopy.exe " & sLocalDestinationPath & " " & sFinalDestinationPath 

     RetVal = Shell.Run(Command2,0,true) 


     If err.Number <> 0 Then 
     'WScript.Echo "An error has occured copying the files, re-run Script." 
     End If 

如果我要到这个问题的错误方式有什么更有效的我应该做我将不胜感激帮助。我是VBscript的新手,我仍然习惯它。

+0

'如果在其中一个应该重新运行脚本的命令期间发生错误'不会导致无限循环?没有什么改变,所以错误会再次发生,这将导致脚本再次启动,这将再次导致错误,这将导致脚本再次启动,并继续和... – JimmyPena 2012-07-09 18:34:31

+0

是的,这是我想到的东西,但是,如果错误是像没有完成压缩文件的东西......嗯......我不诚实真的知道我要去这里。基本上我只需要确保文件压缩和复制没有错误。如果没有变得非常复杂,我无法真正想到一种办法。 – parchambeau 2012-07-09 22:49:28

+0

这些文件是本地的,对吧?将文件复制到网络文件夹可能是故障点。我只是简单地执行脚本,检查错误,如果发生错误,请记录错误并停止。将其设置为按计划运行。然后稍后检查日志,看看它是否在任何时候失败。我相信很多组织都这样做。 – JimmyPena 2012-07-09 23:30:52

我可以建议埃里克利珀的博客......

Error Handling in VBScript, Part One

Error Handling in VBScript, Part Two

Error Handling in VBScript, Part Three

这些资源最近帮我解决一个讨厌的错误处理问题。