📄 frmdsbackupdatap.pas
字号:
unit FrmDsBackUpDataP;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, FrmBaseFormP, StdCtrls, Buttons, ComCtrls, ExtCtrls, Menus;
type
TFrmDsBackUpData = class(TFrmBaseForm)
Img1: TImage;
ProgressBar1: TProgressBar;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
procedure Img1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure BitBtn1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
Function SetData(SourceFile:string;DestFile:string):Integer;
{ Public declarations }
end;
var
FrmDsBackUpData: TFrmDsBackUpData;
implementation
uses SysPub;
{$R *.dfm}
procedure TFrmDsBackUpData.Img1Click(Sender: TObject);
begin
// inherited;
end;
procedure TFrmDsBackUpData.BitBtn2Click(Sender: TObject);
begin
// inherited;
close ;
end;
procedure TFrmDsBackUpData.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
inherited;
action:=cafree;
end;
procedure TFrmDsBackUpData.BitBtn1Click(Sender: TObject);
var Sourcef,destf:string;
Result:Integer;
begin
label3.Caption :='作业进行中...';
Sourcef:=_AppPath+'Data\Dspace.MDB';
DestF:=_AppPath+'backupdata\'+Formatdatetime('yyyy/mm/dd hh-mm-ss',now)+'buckup.mdb';
Result:=Self.SetData(Sourcef,Destf);
IF Result=0 Then
ShowMessage('数据备份成功,文件为'+DestF)
Else
ShowMessage('抱歉,数据备份不成功,请检查原文件及目标文件夹!');
label3.Caption :='作业已完成...';
end;
procedure TFrmDsBackUpData.FormCreate(Sender: TObject);
begin
inherited;
Img1.Picture.LoadFromFile(_AppPath+'Bmp\Tao.Bmp');
end;
Function TFrmDsBackUpData.SetData(SourceFile, DestFile: string):integer;
var
Sourcef,DestF :file of byte;
buffer : array[0..64] of char;
numread:integer;
FileLength :longint;
begin
Try
AssignFile(Sourcef,SourceFile); //得到原文件句柄
Reset(Sourcef);
AssignFile(DestF,DestFile); //得到目标文件句柄
Rewrite(DestF);
Filelength:= Filesize(Sourcef);
with progressbar1 do
begin
min:=0;
max:=Filelength;
while filelength > 0 do
begin
blockread(SourceF,buffer[0],sizeof(buffer),numread);
Filelength := Filelength - numread;
blockwrite(DestF,buffer[0],numread);
position:=position + numread;
end;
closefile(Sourcef);
closefile(DestF);
Result:=0;
End;
Except
Begin
closefile(Sourcef);
closefile(DestF);
Result:=1;
End;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -