2012-07-09 35 views
1

尋找在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

回答