比如我有个ACCESS的数据库DATA.MDB,想通过复制的方法实现将其库的备份。
比如文件在“DATA\DATA.MDB”中。

解决方案 »

  1.   

    function CopyFiles(const Source,Dest: string): boolean;
    var
      fo: TSHFILEOPSTRUCT;
    begin
      FillChar(fo, SizeOf(fo), 0);
      with fo do
      begin
        Wnd := 0;
        wFunc := FO_COPY;
        pFrom := @source[1];
        pTo :=pchar(dest);
        fFlags := FOF_NOCONFIRMATION+FOF_NOCONFIRMMKDIR    ;
      end;
      Result := (SHFileOperation(fo) = 0);
    end;
      

  2.   

    CopyFile(ExtractFilePath(ParamStr(0))+'DATA\DATA.MDB',
             ExtractFilePath(ParamStr(0))+'BAK\DATA.MDB',
             False);
    其中ExtractFilePath(ParamStr(0))为你程序的当前路径。
      

  3.   

    Procedure FileCopy( Const sourcefilename, targetfilename: String );
    Var
      S, T: TFileStream;
    Begin
      S := TFileStream.Create( sourcefilename, fmOpenRead );  try
        T := TFileStream.Create( targetfilename,
                                 fmOpenWrite or fmCreate );
        try
          T.CopyFrom(S, S.Size ) ;
        finally
          T.Free;
        end;
      finally
        S.Free;
      end;
    End;或者:procedure CopyFile(FromFileName, ToFileName: string);
    var
      FromFile, ToFile: File;
    begin
      AssignFile(FromFile, FromFileName); { Assign FromFile to FromFileName }  AssignFile(ToFile, ToFileName);     { Assign ToFile to ToFileName }
      Reset(FromFile);                    { Open file for input }
      try
        Rewrite(ToFile);                  { Create file for output }
        try
          { copy the file an if a negative value is returned }
          { raise an exception }
          if LZCopy(TFileRec(FromFile).Handle, TFileRec(ToFile).Handle) < 0
            then
            raise EInOutError.Create('Error using LZCopy')
        finally
          CloseFile(ToFile);  { Close ToFile }    end;
      finally
        CloseFile(FromFile);  { Close FromFile }
      end;
    end;
      

  4.   

    CopyFile('c:\DATA1.MDB','d:\DATA2.MDB',False);
    就是这个函数,,