📄 ubackup.pas
字号:
unit ubackup;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, Buttons, StdCtrls, ExtCtrls;
type
TFrmbackup = class(TForm)
RadioGroup1: TRadioGroup;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
Label1: TLabel;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
ProgressBar1: TProgressBar;
SpeedButton3: TSpeedButton;
OpenDialog1: TOpenDialog;
edit1: TEdit;
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
private
{ Private declarations }
procedure backupfile(source,destination:string);
public
{ Public declarations }
end;
var
Frmbackup: TFrmbackup;
implementation
{$R *.dfm}
procedure TFrmbackup.SpeedButton3Click(Sender: TObject);
begin
close;
end;
procedure TFrmbackup.backupfile(source, destination: string);
var
FromF,ToF: file of byte;
buffer:array[0..2048] of char;
NumRead:integer;
FileLen:Longint;
begin
AssignFile(FromF,source);
reset(FromF);
AssignFile(toF,destination);
rewrite(ToF);
FileLen := FileSize(FromF);
with progressbar1 do
begin
position := 0;
min := 0;
max := FileLen;
while FileLen>0 do
begin
BlockRead(FromF,buffer[0],sizeof(buffer),NumRead);
FileLen := FileLen-NumRead;
Position := position+NumRead;
BlockWrite(ToF,buffer[0],NumRead);
end;
closeFile(FromF);
closeFile(ToF);
showmessage('备份成功!');
end;
end;
procedure TFrmbackup.SpeedButton2Click(Sender: TObject);
var
s,d,topath:string;
begin
if radiobutton1.Checked then
begin
s := extractFilePath(Application.ExeName)+'data.mdb';
topath := extractFilePath(Application.ExeName)+'\dataout';
d := topath+'\data.bak';
if edit1.Text <>'' then
begin
d := edit1.Text;
topath := extractfilepath(d);
end;
if not directoryExists(topath) then
CreateDir(topath);
backupfile(s,d);
end;
end;
procedure TFrmbackup.SpeedButton1Click(Sender: TObject);
begin
if openDialog1.Execute then
Edit1.Text := OpenDialog1.FileName;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -