VBScript語(yǔ)言提供了兩個(gè)語(yǔ)句和一個(gè)對(duì)象來處理"運(yùn)行時(shí)錯(cuò)誤",如下,1.On Error Resume Next語(yǔ)句,2.On Error Goto 0語(yǔ)句,3.Err對(duì)象,下面我們就來詳細(xì)探討下。如果不使用 On Error 語(yǔ)句,則任何運(yùn)行時(shí)錯(cuò)誤都是致命的;也就是說,結(jié)果會(huì)導(dǎo)致顯示錯(cuò)誤信息并中止運(yùn)行。一個(gè)“允許的”錯(cuò)誤處理程序是由 On Error 語(yǔ)句打開的一個(gè)處理程序;一個(gè)“活動(dòng)的”錯(cuò)誤處理程序是處理錯(cuò)誤的過程中允許的錯(cuò)誤處理程序。
On Error GoTo 0
表示禁止當(dāng)前過程中任何已啟動(dòng)的錯(cuò)誤處理程序。
On Error Resume Next
說明當(dāng)一個(gè)運(yùn)行時(shí)錯(cuò)誤發(fā)生時(shí),控件轉(zhuǎn)到緊接著發(fā)生錯(cuò)誤的語(yǔ)句之后的語(yǔ)句,并在此繼續(xù)運(yùn)行。訪問對(duì)象時(shí)要使用這種形式而不使用 On Error GoTo。
On Error GoTo line
啟動(dòng)錯(cuò)誤處理程序,且該例程從必要的 line 參數(shù)中指定的 line 開始。line 參數(shù)可以是任何行標(biāo)簽或行號(hào)。如果發(fā)生一個(gè)運(yùn)行時(shí)錯(cuò)誤,則控件會(huì)跳到 line,激活錯(cuò)誤處理程序。指定的 line 必須在一個(gè)過程中,這個(gè)過程與 On Error 語(yǔ)句相同; 否則會(huì)發(fā)生編譯時(shí)間錯(cuò)誤。
一般情況下,如果在對(duì)我們創(chuàng)建的對(duì)象或控件進(jìn)行錯(cuò)誤捕捉,需要使用On Error Resume Next ,然后在判斷它的Err.Number,根據(jù)錯(cuò)誤類型來做相應(yīng)的處理。
附一段error相關(guān)的代碼:
?1234567891011 On Error Resume NextDim Msg Err.Clear Err.Raise 6 ' Generate "Overflow" error. Err.Helpfile = "yourHelp.hlp"Err.HelpContext = 5 If Err.Number <> 0 Then Msg = "Press F1 or Help to see " & Err.Helpfile & " topic for" & _ " the following HelpContext: " & Err.HelpContext MsgBox Msg, , "error: " & Err.Description, Err.Helpfile, Err.HelpContext End If
更多信息請(qǐng)查看IT技術(shù)專欄