【問題】程式結束後產生錯誤 |
尚未結案
|
yx_huang77
一般會員 發表:46 回覆:64 積分:22 註冊:2004-03-19 發送簡訊給我 |
|
wameng
版主 發表:31 回覆:1336 積分:1188 註冊:2004-09-16 發送簡訊給我 |
|
yx_huang77
一般會員 發表:46 回覆:64 積分:22 註冊:2004-03-19 發送簡訊給我 |
|
yx_huang77
一般會員 發表:46 回覆:64 積分:22 註冊:2004-03-19 發送簡訊給我 |
|
Miles
尊榮會員 發表:27 回覆:662 積分:622 註冊:2002-07-12 發送簡訊給我 |
|
paikang
一般會員 發表:1 回覆:7 積分:11 註冊:2002-10-08 發送簡訊給我 |
|
yx_huang77
一般會員 發表:46 回覆:64 積分:22 註冊:2004-03-19 發送簡訊給我 |
|
Miles
尊榮會員 發表:27 回覆:662 積分:622 註冊:2002-07-12 發送簡訊給我 |
Hi yx_huang77 你好:
這是我在客戶那邊Debug常常用的方法, 因為對方沒有安裝Delphi, 所以我們無法知道程式在哪裡出錯, 舉個例子
procedure TForm1.Button1Click(Sender: TObject); begin ShowMessage('1'); Label1.Caption := IntToStr(100 div 10); ShowMessage('2'); Label2.Caption := IntToStr(100 div 0); ShowMessage('3'); Label3.Caption := IntToStr(100 div 2000); ShowMessage('4'); end;客戶端跑程式時, 我們就可以從ShowMessage出來的資料得知跑到哪一行錯誤, 當然不是請你每一行都寫一個ShowMessage, 要用漸進的方式Debug, 譬如先寫在各Procedure or function的頭一行, 確定哪個副程式後再看需要做調整. 祝順利 我不是高手, 高手是正在銀幕前微笑的人.
------
我不是高手, 高手是正在銀幕前微笑的人. |
likush
高階會員 發表:5 回覆:235 積分:103 註冊:2002-10-08 發送簡訊給我 |
|
yx_huang77
一般會員 發表:46 回覆:64 積分:22 註冊:2004-03-19 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
Jasonwong
版主 發表:49 回覆:931 積分:581 註冊:2006-10-27 發送簡訊給我 |
|
likush
高階會員 發表:5 回覆:235 積分:103 註冊:2002-10-08 發送簡訊給我 |
|
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
引言: 程式結束後產生錯誤,但是編譯的那台不會其他電腦會!錯誤訊息如下不知出錯的電腦是否使用WIN2000系統(看畫面不像XP), 我有個經驗, 如果我在 開發那台電腦使用資料庫, 而資料庫的開檔連結方式, 舉例以 BDE 設定 TABLE1.DATABASENAME=MYALIAS, 而對方的電腦沒有MYALIAS 一項就會出問題 或者 TABLE1.DATABASENAME='C:\MYPATH\MYDATABASE.DB', 這是最常用的做法(在設計端這樣指定, 直接在PROPERITY 上) 但交給另外一台電腦時, 在2000上如果開啟到這段, 而電腦上沒有這個 MYPATH路徑, 2000會立刻出現你那樣的狀況(但98會有比較清楚的錯誤描述, 反而2000較少), 建議你查一下這支程式中引用的資料庫設定 |
yx_huang77
一般會員 發表:46 回覆:64 積分:22 註冊:2004-03-19 發送簡訊給我 |
|
bruce0211
版主 發表:157 回覆:668 積分:279 註冊:2002-06-13 發送簡訊給我 |
|
yx_huang77
一般會員 發表:46 回覆:64 積分:22 註冊:2004-03-19 發送簡訊給我 |
有兩個會產生錯誤的地方就是在main form 我放了兩個元件timer,StatusBar並寫了以下的動作,覺得奇怪的是得先將這兩個Enabled := False再結束程式才不會觸發這兩個元件? procedure TFmenu.Timer1Timer(Sender: TObject);
begin
SB1.Panels.Items[2].Text := FormatDateTime('yyyy"/"mm"/"dd AM/PM hh:mm:ss' ,now);
end; procedure TFmenu.SB1DrawPanel(StatusBar: TStatusBar; Panel: TStatusPanel;
const Rect: TRect);
begin
PB1.Parent:=SB1;
PB1.Left:=Rect.Left;
PB1.Top:=Rect.Top;
PB1.Width:=Panel.Width - 5;
PB1.Height:=Rect.Bottom-Rect.Top;
PB1.Visible:=True;
end;
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |