![VB串口通信第七節(jié)程序錯(cuò)誤處理方法_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-7/4/a4430afe-cf21-4068-8490-ef0108e5df73/a4430afe-cf21-4068-8490-ef0108e5df731.gif)
![VB串口通信第七節(jié)程序錯(cuò)誤處理方法_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-7/4/a4430afe-cf21-4068-8490-ef0108e5df73/a4430afe-cf21-4068-8490-ef0108e5df732.gif)
![VB串口通信第七節(jié)程序錯(cuò)誤處理方法_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-7/4/a4430afe-cf21-4068-8490-ef0108e5df73/a4430afe-cf21-4068-8490-ef0108e5df733.gif)
![VB串口通信第七節(jié)程序錯(cuò)誤處理方法_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-7/4/a4430afe-cf21-4068-8490-ef0108e5df73/a4430afe-cf21-4068-8490-ef0108e5df734.gif)
![VB串口通信第七節(jié)程序錯(cuò)誤處理方法_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-7/4/a4430afe-cf21-4068-8490-ef0108e5df73/a4430afe-cf21-4068-8490-ef0108e5df735.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Visual Basic 串串 口口 通通 信信 與與 編編 程程 實(shí)實(shí) 例例1第四章第四章 串口調(diào)試軟件的開發(fā)串口調(diào)試軟件的開發(fā)第七節(jié)第七節(jié) 程序錯(cuò)誤處理方法程序錯(cuò)誤處理方法主講教師主講教師: : 張輝張輝辦公地點(diǎn):北科大機(jī)電樓辦公地點(diǎn):北科大機(jī)電樓1218A室室辦公電話:辦公電話系電話:聯(lián)系電話mail: Visual Basic 串串 口口 通通 信信 與與 編編 程程 實(shí)實(shí) 例例2Visual Basic 串串 口口 通通 信信 與與 編編 程程 實(shí)實(shí) 例例3Visual Basic 串串 口口 通通 信信 與與 編編 程程 實(shí)實(shí)
2、例例4 在軟件開發(fā)過程中,無論設(shè)計(jì)如何周密,都無法避免代碼出現(xiàn)錯(cuò)誤。從軟件工程分析角度考慮,軟件已發(fā)現(xiàn)的錯(cuò)誤與軟件本身存在的錯(cuò)誤成正比,這些錯(cuò)誤基本上可以分為兩種類型:一種是編譯錯(cuò)誤,編譯錯(cuò)誤是指VB編譯器無法對(duì)代碼進(jìn)行編譯時(shí)所產(chǎn)生的錯(cuò)誤,大多數(shù)編譯錯(cuò)誤都是句法錯(cuò)誤造成的,如果一個(gè)過程中包含了編譯錯(cuò)誤,VB將不執(zhí)行該過程,而且,作為軟件產(chǎn)品,開發(fā)者也不可能向用戶提供帶有編譯錯(cuò)誤的應(yīng)用程序,因此,這類錯(cuò)誤在代碼編寫過程中就能被發(fā)現(xiàn)和處理。Visual Basic 串串 口口 通通 信信 與與 編編 程程 實(shí)實(shí) 例例5 另一種是運(yùn)行期間發(fā)生的錯(cuò)誤,這種錯(cuò)誤可以利用VB的錯(cuò)誤處理程序捕獲它,對(duì)其進(jìn)行
3、適當(dāng)?shù)奶幚恚⑹钩绦蚶^續(xù)執(zhí)行,這樣就能夠使開發(fā)的軟件具有更強(qiáng)的適應(yīng)性,這類錯(cuò)誤必須通過反復(fù)運(yùn)行程序才能發(fā)現(xiàn),具有一定的隱蔽性,需要用戶提供及時(shí)的反饋信息,然后對(duì)程序進(jìn)行修改,不斷對(duì)程序進(jìn)行完善。 Visual Basic 串串 口口 通通 信信 與與 編編 程程 實(shí)實(shí) 例例67.1 VB的編譯選項(xiàng)7.1VB的編譯選項(xiàng)的編譯選項(xiàng)Visual Basic 串串 口口 通通 信信 與與 編編 程程 實(shí)實(shí) 例例77.1 VB的編譯選項(xiàng)VB中有兩個(gè)設(shè)置項(xiàng)在很大程度上影響創(chuàng)建代碼的能力。一個(gè)設(shè)置項(xiàng)是請(qǐng)求時(shí)編譯(Compile On Demand),另一個(gè)設(shè)置項(xiàng)是后臺(tái)編譯(Background Compil
4、e)。Visual Basic 串串 口口 通通 信信 與與 編編 程程 實(shí)實(shí) 例例87.1 VB的編譯選項(xiàng)Visual Basic 串串 口口 通通 信信 與與 編編 程程 實(shí)實(shí) 例例97.1 VB的編譯選項(xiàng)Visual Basic 串串 口口 通通 信信 與與 編編 程程 實(shí)實(shí) 例例107.2 Err對(duì)象7.2 Err對(duì)象對(duì)象Visual Basic 串串 口口 通通 信信 與與 編編 程程 實(shí)實(shí) 例例117.2 Err對(duì)象屬性或方法屬性或方法屬性類型屬性類型說明說明NumberLong范圍為065535,用于保存錯(cuò)誤號(hào),用戶自定義錯(cuò)誤號(hào)為vbObjectError + n。SourceS
5、tring指明錯(cuò)誤產(chǎn)生的對(duì)象或應(yīng)用程序的名稱。當(dāng)設(shè)置對(duì)象的這一屬性時(shí),要使用窗體 project.class。如果沒有指定source,則使用當(dāng)前Visual Basic工程的程序設(shè)計(jì)ID。DescriptionString用于記錄描述錯(cuò)誤的字符串信息。如果沒有指定,則檢查 Number 的值。如果可以將錯(cuò)誤映射成 Visual Basic 運(yùn)行時(shí)錯(cuò)誤代碼,則將Err函數(shù)返回的字符串作為Description 使用。如果沒有與 Number 對(duì)應(yīng)的 Visual Basic 錯(cuò)誤,則設(shè)置為應(yīng)用程序定義的錯(cuò)誤或?qū)ο蠖x的錯(cuò)誤。helpfileString與錯(cuò)誤相關(guān)的VB 幫助文件所在的驅(qū)動(dòng)器、路
6、徑和文件名,Microsoft Windows 幫助文件的完整限定的路徑,在幫助文件中可以找到有關(guān)錯(cuò)誤的幫助信息。如果沒有指定,則 Visual Basic 會(huì)使用 Visual Basic 幫助文件的完整限定的驅(qū)動(dòng)器、路徑和文件名。helpcontextString識(shí)別helpfile內(nèi)的標(biāo)題的上下文 ID,而 helpfile 提供有助于了解錯(cuò)誤的描述。如果省略,則使用處理有關(guān)錯(cuò)誤的 Visual Basic 幫助文件的上下文 ID,該 ID 與 Number 屬性對(duì)應(yīng)。Clear用于清除Err對(duì)象的當(dāng)前屬性值Raise產(chǎn)生指定錯(cuò)誤號(hào)的錯(cuò)誤,用于調(diào)試錯(cuò)誤處理程序段Visual Basic
7、串串 口口 通通 信信 與與 編編 程程 實(shí)實(shí) 例例127.2 Err對(duì)象Private Sub Form_Load()On Error Resume NextErr.Raise 6 故意產(chǎn)生6號(hào)錯(cuò)誤(溢出)MsgBox (Error # & CStr(Err.Number) & & Err.Description) 顯示錯(cuò)誤信息Err.Clear 清除設(shè)置的錯(cuò)誤號(hào)MsgBox (Error # & CStr(Err.Number) & & Err.Description) 顯示錯(cuò)誤信息End SubVisual Basic 串串 口口 通通 信
8、信 與與 編編 程程 實(shí)實(shí) 例例137.3 錯(cuò)誤的捕獲與退出7.3 錯(cuò)誤的捕獲與退出錯(cuò)誤的捕獲與退出Visual Basic 串串 口口 通通 信信 與與 編編 程程 實(shí)實(shí) 例例147.3 錯(cuò)誤的捕獲與退出Err函數(shù)返回最近一次運(yùn)行出現(xiàn)錯(cuò)誤所對(duì)應(yīng)的消息。如果沒有發(fā)生運(yùn)行錯(cuò)誤,或者err.number的屬性為0,則Err的description屬性返回一個(gè)長(zhǎng)度為零的字符串()。(1) 捕獲錯(cuò)誤語句 (On Error)使用 On Error 語句可以捕獲錯(cuò)誤,其語法格式如下:On Error 標(biāo)號(hào)通常,該語句放置在過程的開始位置。在程序運(yùn)行過程中,當(dāng)該語句后面的代碼出錯(cuò)時(shí),則程序就會(huì)自動(dòng)跳轉(zhuǎn)到標(biāo)
9、號(hào)所指定的程序行去運(yùn)行,標(biāo)號(hào)所指示的程序行通常為錯(cuò)誤處理程序段的開始行。On Error常用的幾種使用形式如下所示:1) On Error GoTo line轉(zhuǎn)到line執(zhí)行錯(cuò)誤處理語句(line 參數(shù)可以是任何行標(biāo)簽或行號(hào))Visual Basic 串串 口口 通通 信信 與與 編編 程程 實(shí)實(shí) 例例157.3 錯(cuò)誤的捕獲與退出2) On Error Resume Next忽略所有錯(cuò)誤,從發(fā)生錯(cuò)誤的語句的下一語句繼續(xù)運(yùn)行。3) On Error GoTo 0 禁止當(dāng)前過程中任何已啟動(dòng)的錯(cuò)誤處理程序。一個(gè)使用錯(cuò)誤處理的示例:On Error GoTo ErrLine 以后出錯(cuò)時(shí)轉(zhuǎn)移至 ErrL
10、ine . . . ErrLine: 標(biāo)號(hào). . . Resume 返回語句 Visual Basic 串串 口口 通通 信信 與與 編編 程程 實(shí)實(shí) 例例167.3 錯(cuò)誤的捕獲與退出Private Sub Form_Load()On Error Resume NextDim i As Integeri = 10 / 0MsgBox (跳至下一句執(zhí)行)On Error GoTo 0On Error GoTo ErrLinei = 10 / 0On Error GoTo 0i = 10 / 0MsgBox (該語句無法執(zhí)行)ErrLine:MsgBox (跳至標(biāo)號(hào)執(zhí)行)Resume NextEn
11、d SubVisual Basic 串串 口口 通通 信信 與與 編編 程程 實(shí)實(shí) 例例177.3 錯(cuò)誤的捕獲與退出Private Sub Form_Load()On Error Resume NextDim i As Integeri = 10 / 0MsgBox (跳至下一句執(zhí)行)On Error GoTo 0On Error GoTo ErrLinei = 10 / 0On Error GoTo 0i = 10 / 0MsgBox (該語句無法執(zhí)行)ErrLine:MsgBox (跳至標(biāo)號(hào)執(zhí)行)Resume NextEnd SubVisual Basic 串串 口口 通通 信信 與與 編
12、編 程程 實(shí)實(shí) 例例187.3 錯(cuò)誤的捕獲與退出退出錯(cuò)誤處理語句退出錯(cuò)誤處理語句 (Resume) Visual Basic 串串 口口 通通 信信 與與 編編 程程 實(shí)實(shí) 例例197.3 錯(cuò)誤的捕獲與退出返回語句 Resume 有三種用法:1) Resume 0如果錯(cuò)誤和錯(cuò)誤處理程序出現(xiàn)在同一個(gè)過程中,則從產(chǎn)生錯(cuò)誤的語句恢復(fù)運(yùn)行;如果錯(cuò)誤出現(xiàn)在被調(diào)用的過程中,則從最近一次調(diào)用包含錯(cuò)誤處理程序的過程的語句處恢復(fù)運(yùn)行。Visual Basic 串串 口口 通通 信信 與與 編編 程程 實(shí)實(shí) 例例207.3 錯(cuò)誤的捕獲與退出2) Resume Next如果錯(cuò)誤和錯(cuò)誤處理程序出現(xiàn)在同一個(gè)程序中,則從緊隨產(chǎn)生錯(cuò)誤的語句的下個(gè)語句恢復(fù)運(yùn)行;如果錯(cuò)誤發(fā)生在被調(diào)用的過程中,則返回最后一次調(diào)用包含錯(cuò)誤處理程序的過程(或 On Error Resume Next 語句),從緊隨該語句之后的語句處恢復(fù)運(yùn)行。Visual Basic 串串 口口 通通 信信 與與 編編 程程 實(shí)實(shí) 例例217.3 錯(cuò)誤的捕獲與退出3) Resume 標(biāo)號(hào)程序返回到標(biāo)號(hào)處繼續(xù)執(zhí)行。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 施工安全協(xié)議書的法律法規(guī)與標(biāo)準(zhǔn)依據(jù)
- 2025年醫(yī)藥公司宿舍房屋租賃合同范文
- 2025年債權(quán)債務(wù)清算執(zhí)行協(xié)議
- 2025年建筑現(xiàn)澆樓板合同樣本
- 2025年光學(xué)計(jì)量標(biāo)準(zhǔn)器具項(xiàng)目提案報(bào)告模板
- 2025年企業(yè)籌資借款策劃合同范本
- 2025年住宅購(gòu)置合同樣式
- 2025年臨時(shí)員工聘用協(xié)議規(guī)定
- 2025年個(gè)人司機(jī)工作合同
- 2025年企業(yè)消費(fèi)信貸擔(dān)保協(xié)議范本
- 氧化還原反應(yīng)方程式的配平(八大配平技巧)-PPT課件
- 天津人社局解除勞動(dòng)合同證明書
- (高清正版)JJF(浙)1090—2014薄片千分尺校準(zhǔn)規(guī)范
- 2020年采購(gòu)部年度目標(biāo)計(jì)劃 采購(gòu)部工作目標(biāo)
- 陽光分級(jí)閱讀高一上The Emperor Penguin課件
- 黑水虻幼蟲的營(yíng)養(yǎng)成分表
- 國(guó)家農(nóng)產(chǎn)品質(zhì)量安全監(jiān)督抽查抽樣單
- 高校教師個(gè)人總結(jié)3000字?jǐn)?shù)
- 離心式壓縮機(jī)功率公式
- 柴油機(jī)突然停機(jī)的原因及判斷處理
- 參保人員就醫(yī)流程doc
評(píng)論
0/150
提交評(píng)論