關於「stop on Delphi Exception」除錯選項的問題? |
答題得分者是:jieshu
|
Dalman
一般會員 發表:27 回覆:22 積分:24 註冊:2002-08-21 發送簡訊給我 |
|||
pprayer
高階會員 發表:35 回覆:185 積分:174 註冊:2002-03-13 發送簡訊給我 |
|||
T.J.B
版主 發表:29 回覆:532 積分:497 註冊:2002-08-14 發送簡訊給我 |
|||
Dalman
一般會員 發表:27 回覆:22 積分:24 註冊:2002-08-21 發送簡訊給我 |
可能各位大哥不明白我的意思,用一段程式來表示好了
function AsDateTime(vVal: Variant; vDefaultVal: AnsiString=''): AnsiString; begin try result := FormatDateTime('yyyy/mm/dd hh:nn:ss', VarToDateTime(vVal)); except on e: Exception do result := vDefaultVal; end; end; 用法: s := AsDateTime(Now(), '1899/12/30');上述函式為轉換Variant值為日期時間字串: 【測試範例】 var s: AnsiString; begin s := AsDateTime('ASDR', '1990/01/10'); end; 【說明】 ‧若由 Delphi 編譯成執行檔後,執行「.exe 執行檔」則結果為正確的'1990/01/10'。 ‧若直接按 F9 執行,則 Delphi 就會跳出對話窗告知「無法轉換型別」錯誤。 ‧會跳出對話窗告知「無法轉換型別」錯誤是因為沒有預先關閉「Tools/Debug Options/Language Exceptions」內的「stop on Delphi Exceptions」選項。 ‧但是我既然寫成了 try ... except ... end 如此形式的程式區段,就表示我想自行處理這個「轉換型別」錯誤事件,可是每每按下 F9 執行後,Delphi IDE 就會滿「雞婆」地幫我顯示這個「轉換型別」錯誤訊息對話窗。 ‧不關閉「stop on Delphi Exceptions」選項是因為我想要 Delphi 在按下 F9 後,能幫我找出另一些在執行時期我無法預期的程式錯誤事件,可是在上述函式中我已經「自行預知」可能會發生「轉換型別」錯誤,所以用此寫法來傳回適當的傳回值,並不需要按下 F9 執行後 Delphi 雞婆地顯示訊息通知(這樣子雞婆的顯示訊息會導致整個程式執行中斷然後強迫結束...|||)。 ‧有適當的方法可以在 Delphi IDE 中既按下 F9 執行,又能除錯其它程式段,但又能讓 Delphi debuger 去忽略有 try ... except ... end 區段的錯誤事件顯示訊息嗎? 不知這樣的說明,讓各位大哥知道問題點出在哪裡了嗎? |
||
jieshu
版主 發表:42 回覆:894 積分:745 註冊:2002-04-15 發送簡訊給我 |
引言: ‧有適當的方法可以在 Delphi IDE 中既按下 F9 執行,又能除錯其它程式段,但又能讓 Delphi debuger 去忽略有 try ... except ... end 區段的錯誤事件顯示訊息嗎?目前我只知道如何設定整個unit不Debug,你可將有可能錯誤又不Debug的程式碼,放到設定不Debug的unit裡。 只要在該unit輸入{$D-},即整個unit不Debug。
------
人生有夢,逐夢而行 人若為善,福雖未至,禍已遠離 人若為惡,禍雖未至,福已遠離 http://www.taconet.com.tw/jieshu/ |
||
william
版主 發表:66 回覆:2535 積分:3048 註冊:2002-07-11 發送簡訊給我 |
I don't think there is any solution to this problem (Iwould like to have one myelf!). However you may try to ignore the exception type by adding it to the "Exception Types to Ignore", e.g. EConvertError for conversion error. And I find it sometimes this list of ignorable exceptions does not work properly.
|
||
Dalman
一般會員 發表:27 回覆:22 積分:24 註冊:2002-08-21 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |