線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:2178
推到 Plurk!
推到 Facebook!

copy正在使用中的檔案

答題得分者是:Mickey
Paicaso
中階會員


發表:140
回覆:124
積分:52
註冊:2002-09-04

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-03-09 23:20:18 IP:61.59.xxx.xxx 未訂閱
請教先進一個問題 再我的Project中有開啟一個Access的資料表,而我有一個Form欲將該MDB檔複製到另一個路徑. 我用以下之方法 CopyFile(PCHAR('c:\stk.mdb'), SYS_PATH '\stk2.mdb', False) 會有以下錯誤: Can't open file" ".程序無法存取檔案,因為檔案正由另一個程序使用 我想是因有開啟該資料表,故無法拆解位元CopyFile,但用DOS指令再DOS模式下可以複製檔案,請問有何方式來執行 Thanks
Mickey
版主


發表:77
回覆:1882
積分:1390
註冊:2002-12-11

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-03-10 11:25:27 IP:61.219.xxx.xxx 未訂閱
引言: 請教先進一個問題 再我的Project中有開啟一個Access的資料表,而我有一個Form欲將該MDB檔複製到另一個路徑. 我用以下之方法 CopyFile(PCHAR('c:\stk.mdb'), SYS_PATH '\stk2.mdb', False) 會有以下錯誤: Can't open file" ".程序無法存取檔案,因為檔案正由另一個程序使用 我想是因有開啟該資料表,故無法拆解位元CopyFile,但用DOS指令再DOS模式下可以複製檔案,請問有何方式來執行 Thanks
試試 IdGlobal.pas CopyFileTo function :
function CopyFileTo(const Source, Destination: string): Boolean;
var
  SourceStream: TFileStream;
begin
  result := false;
  if not FileExists(Destination) then
  begin
    SourceStream := TFileStream.Create(Source, fmOpenRead);
    try
      with TFileStream.Create(Destination, fmCreate) do
      try
        CopyFrom(SourceStream, 0);
      finally free;
      end;
    finally SourceStream.free;
    end;
    result := true;
  end;
end;
/* Free 和 Create 一樣重要 */
系統時間:2024-04-27 8:48:04
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!