一个奇怪的错误,帮忙 |
尚未結案
|
lovelypp
初階會員 發表:122 回覆:111 積分:46 註冊:2003-02-19 發送簡訊給我 |
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi: 建議你修改一下程式碼如下,如此比較好判定 Rename 失敗原因
procedure TForm1.Button1Click(Sender: TObject); var OldName,NewName: WideString; begin NewName := 'D:\Book1.xls'; OldName := 'D:\Book2.xls'; IF FileExists(OldName) THEN BEGIN IF FileExists(NewName) THEN BEGIN IF NOT DeleteFile(NewName) THEN BEGIN ShowMessage('目的檔已存在,且無法刪除!!'); Exit; END; END; IF ReNameFile(OldName,NewName) THEN ShowMessage('更名成功') ELSE ShowMessage('更名失敗') END ELSE ShowMessage(OldName ' 檔案不存在!!'); end;原則上,我認為應該與資源管理器(檔案總管?)無關,Rename 失敗原因不外乎 1.Source File 使用中 2.無 Source File 3.Target File 已存在 4.... 你再試試 -------------------------------- 小弟才疏學淺,若有謬誤請不吝指教 --------------------------------
------
Fishman |
Chance36
版主 發表:31 回覆:1033 積分:792 註冊:2002-12-31 發送簡訊給我 |
|
lovelypp
初階會員 發表:122 回覆:111 積分:46 註冊:2003-02-19 發送簡訊給我 |
|
lovelypp
初階會員 發表:122 回覆:111 積分:46 註冊:2003-02-19 發送簡訊給我 |
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi: Sorry,筆誤,完整寫法如下
procedure TForm1.Button7Click(Sender: TObject); var OldName,NewName: WideString; begin NewName := 'D:\bb.exe'; OldName := 'D:\aa.exe'; IF FileExists(OldName) THEN BEGIN IF FileExists(NewName) THEN BEGIN IF NOT DeleteFile(NewName) THEN BEGIN ShowMessage('目的檔已存在,且無法刪除!!'); Exit; END ELSE BEGIN While FileExists(NewName) DO Sleep(200); END; END; IF ReNameFile(OldName,NewName) THEN ShowMessage('更名成功') ELSE ShowMessage('更名失敗') END ELSE ShowMessage(OldName ' 檔案不存在!!'); end;-------------------------------- 小弟才疏學淺,若有謬誤請不吝指教 --------------------------------
------
Fishman |
lovelypp
初階會員 發表:122 回覆:111 積分:46 註冊:2003-02-19 發送簡訊給我 |
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi: lovelypp ,
while(FileExists(FDstFile) do begin Sleep(100); end;主要功能即在於檢測是否存在 FDstFile,因先前已下過 DeleteFile(FDstFile) 且執行成功,迴圈只是在檢測系統是否已徹底刪除文件,以繼續執行 ReName 動作 -------------------------------- 小弟才疏學淺,若有謬誤請不吝指教 --------------------------------
------
Fishman |
lovelypp
初階會員 發表:122 回覆:111 積分:46 註冊:2003-02-19 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |