用COPYFILE复制这个文件就可以了啊

解决方案 »

  1.   

    使用BatchMove组件备份
    unit backup_window;interfaceuses
      Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
      Buttons, StdCtrls, ComCtrls, ExtCtrls, FileCtrl, Gauges, Db, DBTables;type
      Tbackup = class(TForm)
        SpeedButton1: TSpeedButton;
        SpeedButton2: TSpeedButton;
        Panel1: TPanel;
        Label1: TLabel;
        Label2: TLabel;
        Timer1: TTimer;
        Table1: TTable;
        Table2: TTable;
        Edit1: TEdit;
        OpenDialog1: TOpenDialog;
        Label3: TLabel;
        SpeedButton3: TSpeedButton;
        SpeedButton4: TSpeedButton;
        Label4: TLabel;
        Edit2: TEdit;
        SaveDialog1: TSaveDialog;
        BatchMove1: TBatchMove;
        procedure SpeedButton1Click(Sender: TObject);
        procedure SpeedButton2Click(Sender: TObject);
        procedure SpeedButton3Click(Sender: TObject);
        procedure SpeedButton4Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      backup: Tbackup;implementationuses Analyst_Window, Main_Window;{$R *.DFM}procedure Tbackup.SpeedButton1Click(Sender: TObject);
    begin
    if (Edit1.text='')or(Edit2.text='') then
      MessageDlg('不能备份数据,您没有选择源文件或目的文件!请正确选择文件后在操作一次', mtInformation, [mbOk], 0)
    else
      begin
       try             //有问题!
       MainWindow.Table3.Active:=false;
       Table1.Tablename:=Edit1.Text;
       Table2.Tablename:=Edit2.Text;
       Table1.Active:=false;
       Table2.Active:=false;
       batchmove1.source:=Table1;
       batchmove1.destination:=Table2;
       batchmove1.mode:=batcopy;
       Label2.visible:=true;
       batchmove1.execute;
       if MessageDlg('数据表备份完成!', mtInformation, [mbOk], 0)=idOK then
       begin
       Label2.visible:=false;
       Table1.Active:=true;
       Table2.Active:=true;
       end;
       except
       on d:efopenerror do   //这是什么意思?
       begin
       MessageDlg('不能进行备份操作,请检查路径及相关问题', mtError, [mbOk], 0);
       Table1.Active:=true;
       Table2.Active:=true;
       end
       end;
      end;
    MainWindow.Table3.Active:=true;
    end;procedure Tbackup.SpeedButton2Click(Sender: TObject);
    begin
    close;
    end;procedure Tbackup.SpeedButton3Click(Sender: TObject);
    begin
    if opendialog1.execute then
       Edit1.text:=opendialog1.filename;
    end;procedure Tbackup.SpeedButton4Click(Sender: TObject);
    begin
    if Savedialog1.execute then
       Edit2.text:=Savedialog1.filename;
    end;end.