執行程式時, tmp 檔出現正在被使用中 |
缺席
|
energybody
一般會員 發表:44 回覆:32 積分:15 註冊:2007-04-12 發送簡訊給我 |
小弟在 trace delphi 程式時, 程式會開一些 c:\..\tmp.db 的檔案, 但是 trace 到一半後發現錯誤而要更改程式,這時的 c:\..\tmp.db 檔案是處於開啟的狀態, 於是用 program reset(CTRL-F2)來結束程式, 並修改程式後再執行, 卻出現 c:\..\tmp.db 檔案正在被使用中, ,小弟的程式中會先將 檔案 tmp.close 關閉, 但是在 tmp.createtable 時卻會出現此錯誤, 必需將 delphi 結束再重新執行 delphi, 請問有何 delphi 或 win32ap 可以在程式中將此檔案在程式中先真正的關閉, 而不會在 tmp.createtable 時出現錯誤..
tmpREV.close; <-----先 close tmpREV.FieldDefs.Clear; with tmpREV.FieldDefs do // Äæ¦ì»¡©ú n°O±o¸É begin add('Fn',ftString,10); add('Hbl',ftstring,20); . . end; tmpREV.IndexDefs.Clear; tmpREV.IndexDefs.Add('','Fn;Hbl',[ixprimary,ixunique]); tmpREV.CreateTable; <--- 出現 正在使用中的錯誤 |
ko
資深會員 發表:28 回覆:785 積分:444 註冊:2002-08-14 發送簡訊給我 |
|
Coffee
版主 發表:31 回覆:878 積分:561 註冊:2006-11-15 發送簡訊給我 |
|
energybody
一般會員 發表:44 回覆:32 積分:15 註冊:2007-04-12 發送簡訊給我 |
|
Coffee
版主 發表:31 回覆:878 積分:561 註冊:2006-11-15 發送簡訊給我 |
你開一個新的project,在form show時showMessage兩次,
show第一次,就按Ctrl F2把程式關掉, 那第二次的showmessage還會出現嗎?不會吧? 那你又怎麼能寄望程式強制關閉時還替你收尾? 程式被強制中斷時,檔案鎖並不是直接還給Windows,而是遞移給開啟這個程式的執行緒, 那檔案鎖沒解開,你又開新的,新的嘗試讀取時當然就會失敗, 因為新的process跟舊的process是兩碼子事, 如果你非得要在Exception才作事,那就括一個try起來,在Exception時就先關掉file, 這樣你還可以正常的關閉程式。 如果程式的錯誤範圍這麼大,那你就去找unlocker吧..google就會有
------
不論是否我發的文,在能力範圍皆很樂意為大家回答問題。 為了補我的能力不足之處,以及讓答案可以被重複的使用,希望大家能儘量以公開的方式問問題。 在引述到我的文時自然會儘量替各位想辦法,謝謝大家!
編輯記錄
Coffee 重新編輯於 2007-05-28 12:14:15, 註解 改錯字XD‧
|
energybody
一般會員 發表:44 回覆:32 積分:15 註冊:2007-04-12 發送簡訊給我 |
|
Coffee
版主 發表:31 回覆:878 積分:561 註冊:2006-11-15 發送簡訊給我 |
那可能就真的沒辦法了
因為我之前有遇到類似問題,Unlocker解開就能用, 並不清楚Delphi是不是有再作其它事情, 你看要不要考慮在自己的程式裡面去處理對tmp檔的開關,而不要使用Program Reset 或者是,既然是tmp檔,是否考慮在create之前先去嘗試delete,然後讓它自己create.
------
不論是否我發的文,在能力範圍皆很樂意為大家回答問題。 為了補我的能力不足之處,以及讓答案可以被重複的使用,希望大家能儘量以公開的方式問問題。 在引述到我的文時自然會儘量替各位想辦法,謝謝大家!
編輯記錄
Coffee 重新編輯於 2007-05-28 16:23:56, 註解 無‧
|
nod32
初階會員 發表:3 回覆:29 積分:31 註冊:2007-05-21 發送簡訊給我 |
|
energybody
一般會員 發表:44 回覆:32 積分:15 註冊:2007-04-12 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |