fw110unit.pas

来自「本程序为完整毕业设计作品」· PAS 代码 · 共 84 行

PAS
84
字号
unit FW110Unit;

interface

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

type
  TFW110Form = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    OpenDialog1: TOpenDialog;
    Memo1: TMemo;
    procedure Button3Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  FW110Form: TFW110Form;

implementation

uses main, DMUnit;

{$R *.dfm}

procedure TFW110Form.Button3Click(Sender: TObject);
begin
  Close;
end;

procedure TFW110Form.Button1Click(Sender: TObject);
var
  F: TShFileOpStruct;
begin
  F.wnd := Handle;
  F.wFunc := Fo_COPY; {操作方式}
  F.pFrom := pAnsichar(ExtractFileDir(Application.ExeName) + '\Data\HY.mdb' + #0);
  OpenDialog1.Filter := 'ACCESS 文件(*.mdb)|*.mdb';
  OpenDialog1.Title := '选择备份路径和文件名';
  OpenDialog1.InitialDir := ExtractFileDir(Application.ExeName) + '\Data\backup';
  if OpenDialog1.Execute then
    F.pTo := pAnsichar(OpenDialog1.FileName + '.mdb');
  F.fFlags := FOF_ALLOWUNDO or FOF_RENAMEONCOLLISION; {操作选项}
  if ShFileOperation(F) <> 0 then
    MessageBox(0, '数据文件备份失败!', '错误', MB_OK + MB_ICONSTOP)
  else
    MessageBox(0, '数据文件备份成功!', '成功', MB_OK + MB_ICONINFORMATION);
end;

procedure TFW110Form.Button2Click(Sender: TObject);
var
  F: TShFileOpStruct;
begin
  F.wnd := Handle;
  F.wFunc := Fo_Delete; {操作方式}
  F.pFrom := pAnsichar(ExtractFileDir(Application.ExeName) + '\Data\HY.mdb' + #0);
  F.fFlags := FOF_ALLOWUNDO or FOF_RENAMEONCOLLISION; {操作选项}
  {--- 断开连接 ---}
  DM.conn.Connected := False;
  if ShFileOperation(F) <> 0 then
    MessageBox(0, '删除原始数据文件失败!', '错误', MB_OK + MB_ICONSTOP)
  else
  begin
    OpenDialog1.Filter := 'ACCESS 文件(*.mdb)|*.mdb';
    OpenDialog1.InitialDir := ExtractFileDir(Application.ExeName) + '\Data\backup\';
    OpenDialog1.Title := '选择备份文件';
    if OpenDialog1.Execute then
      if CopyFile(PChar(OpenDialog1.FileName), PChar(ExtractFileDir(Application.ExeName) + '\Data\HY.mdb'), False) then
        MessageBox(0, '数据文件恢复成功!', '成功', MB_OK + MB_ICONINFORMATION);
     {--- 恢复连接 ---}
    DM.conn.Connected := True;
  end;
end;

end.

⌨️ 快捷键说明

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