ubak.pas

来自「从同学哪里拷贝来的程序,毕业设计用的,大家看看,有帮助的哦」· PAS 代码 · 共 74 行

PAS
74
字号
unit ubak;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ShellApi, StdCtrls;

type
  Tbak = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Button2: TButton;
    Button3: TButton;
    SaveDialog1: TSaveDialog;
    procedure Button3Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  bak: Tbak;

implementation
uses unit1;
{$R *.dfm}

procedure Tbak.Button3Click(Sender: TObject);
var
OpStruc: TSHFileOpStruct;
FromBuf, ToBuf: Array [0..128] of Char;
begin
  FillChar(FromBuf, Sizeof(FromBuf), 0 );
  FillChar(ToBuf, Sizeof(ToBuf), 0 );
  StrPCopy(FromBuf, Pchar(Edit1.Text));
  StrPCopy(ToBuf, Pchar(Edit2.Text) );
  // 设置OpStruc
  with OpStruc do
  begin
    Wnd:= Handle;
    wFunc:= FO_COPY;
    pFrom:= @FromBuf;
    pTo:=@ToBuf;
    fFlags:=FOF_NOCONFIRMATION or FOF_RENAMEONCOLLISION;
    fAnyOperationsAborted:= False;
    hNameMappings:= nil;
    lpszProgressTitle:= nil;
  end ;
  if SHFileOperation( OpStruc ) = 0 then
 MessageBox(Handle,'备份完毕。','信息',MB_OK+MB_ICONINFORMATION);


end;

procedure Tbak.Button2Click(Sender: TObject);
begin
savedialog1.execute;
edit2.text:=savedialog1.FileName ;
end;

procedure Tbak.FormCreate(Sender: TObject);
begin
edit1.Text:=form1.GetExePath+'database';
edit2.text:=form1.GetExePath+'databak\database';
end;

end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?