?? xtsz_sjbfform.~pas
字號:
unit xtsz_sjbfform;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, StdCtrls, FileCtrl, Buttons, ComCtrls;
type
Txtsz_sjbf = class(TForm)
FileListBox1: TFileListBox;
DirectoryListBox1: TDirectoryListBox;
DriveComboBox1: TDriveComboBox;
Bevel1: TBevel;
Bevel2: TBevel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Bevel3: TBevel;
Label4: TLabel;
Label5: TLabel;
procedure BitBtn3Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
ddir:string;
procedure copyfile(const source, dest:string);
{ Private declarations }
public
{ Public declarations }
end;
var
xtsz_sjbf: Txtsz_sjbf;
implementation
{$R *.DFM}
procedure txtsz_sjbf.copyfile(const source, dest:string);
const
buffersize=1430000;
Var
sourcefile,destfile:file of byte;
buffer:pbyte;
count:longint;
begin
assignfile(sourcefile,source);
assignfile(destfile,dest);
buffer:=nil;
try
getmem(buffer,buffersize);
filemode:=0;
reset(sourcefile);
rewrite(destfile);
repeat
blockread(sourcefile,buffer^,buffersize,count);
blockwrite(destfile,buffer^,count);
until count=0;
finally
closefile(sourcefile);
closefile(destfile);
freemem(buffer);
end;
end;
procedure Txtsz_sjbf.BitBtn3Click(Sender: TObject);
begin
close;
end;
procedure Txtsz_sjbf.FormShow(Sender: TObject);
begin
label1.Refresh;
label2.refresh;
label3.refresh;
label4.refresh;
label5.refresh;
bevel1.Refresh;
bevel2.refresh;
bevel3.refresh;
end;
procedure Txtsz_sjbf.BitBtn1Click(Sender: TObject); //數據備份
var sdir:string;
ai:integer;
HWndCalculator:HWnd;
begin
HWndCalculator:=Windows.FindWindow(nil,'維修管理系統 [明日科技]');
If HWndCalculator <> 0 Then begin
showmessage('請先關閉維修管理系統,然后在備份數據');
exit;
end;
if messagedlg('您確定要備份數據嗎?',mtCustom,[mbyes,mbno],0)<>mryes then begin
exit;
end;
if label5.caption[length(label5.caption)]<>'\' then sdir:=label5.caption+'\'else sdir:=label5.caption;
If filelistbox1.Items.count > 0 Then begin
for ai:=0 to filelistbox1.Items.count-1 do begin
if filelistbox1.Items[ai]=datetostr(date)+'.M_D' then begin
if messagedlg('該目錄下以有您今天備份的數據了,'+#13+您確定要覆蓋它嗎?',mtCustom,[mbyes,mbno],0)=mryes then begin
deletefile(filelistbox1.Items[ai]);
break;
end else begin
exit;
end;
end;
end;
end;
copyfile(ddir+'\data\db1.mdb',sdir+datetostr(date)+'.M_D');
showmessage('數據備份完畢');
filelistbox1.update;
end;
procedure Txtsz_sjbf.BitBtn2Click(Sender: TObject); //數據恢復
begin
if filelistbox1.FileName<>'' then begin
if messagedlg('您確定要恢復該備份文件的信息嗎?',mtCustom ,[mbyes,mbno],0)=mryes then begin
deletefile(ddir+'\data\db1.mdb');
copyfile(filelistbox1.FileName,ddir+'\data\db1.mdb');
showmessage('數據恢復完畢.');
end;
end else begin
showmessage('請選擇數據備份文件');
end;
end;
procedure Txtsz_sjbf.FormCreate(Sender: TObject);
begin
getdir(0,ddir);
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -