⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 enc_main.pas

📁 Pascal/Delphi源代码混淆工具
💻 PAS
字号:
unit Enc_Main;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, ShellAPI, Spin;

type
  TForm1 = class(TForm)
    Panel3: TPanel;
    Panel2: TPanel;
    GroupBox1: TGroupBox;
    Edit1: TEdit;
    Panel1: TPanel;
    OpenDialog1: TOpenDialog;
    GroupBox2: TGroupBox;
    Panel4: TPanel;
    Panel5: TPanel;
    Panel6: TPanel;
    Panel7: TPanel;
    GroupBox3: TGroupBox;
    CheckBox2: TCheckBox;
    CheckBox1: TCheckBox;
    GroupBox4: TGroupBox;
    RadioButton1: TRadioButton;
    RadioButton2: TRadioButton;
    RadioButton3: TRadioButton;
    procedure Panel1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Panel1Click(Sender: TObject);
    procedure Edit1Change(Sender: TObject);
    procedure Panel2MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Panel4Click(Sender: TObject);
    procedure Panel5Click(Sender: TObject);
    procedure Panel6Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure DropFiles(var Msg: TMessage); Message WM_DROPFILES;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

{$R WindowsXP.res}

uses Enc_Preview, Enc_Functions;

procedure TForm1.Panel1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
     (Sender as TPanel).BevelInner := bvLowered;
end;

procedure TForm1.Panel1Click(Sender: TObject);
begin
     Panel1.BevelInner := bvRaised;
     if OpenDialog1.Execute then Edit1.Text := OpenDialog1.FileName;
end;

procedure TForm1.Edit1Change(Sender: TObject);
begin
     Panel4.Enabled := (Trim(Edit1.Text) <> '');
     Panel6.Enabled := (Trim(Edit1.Text) <> '');
     if Panel4.Enabled then Panel4.Font.Color := clBlack
                       else Panel4.Font.Color := clGray;
     if Panel6.Enabled then Panel6.Font.Color := clBlack
                       else Panel6.Font.Color := clGray;
end;

procedure TForm1.Panel2MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
     ReleaseCapture;
     Perform(WM_SYSCOMMAND, $F012, 0);
end;

procedure TForm1.Panel4Click(Sender: TObject);
begin
     Panel4.BevelInner := bvRaised;
     if not FileExists(Edit1.Text) then
        begin
             MessageBox(Handle,
                        PChar('找不到文件:'#13#10'“' + Edit1.Text + '”'),
                        '错误',
                        MB_ICONERROR);
             Exit;
        end;
     Form2.FilePath := Edit1.Text;
     Form2.ShowModal;
end;

procedure TForm1.Panel5Click(Sender: TObject);
begin
     Panel5.BevelInner := bvRaised;
     Form1.Close;
end;

procedure TForm1.Panel6Click(Sender: TObject);
begin
     Panel6.BevelInner := bvRaised;
     if not FileExists(Edit1.Text) then
        begin
             MessageBox(Handle,
                        PChar('找不到文件:'#13#10'“' + Edit1.Text + '”'),
                        '错误',
                        MB_ICONERROR);
             Exit;
        end;
     if CheckBox1.Checked then
        CopyFile(PChar(Edit1.Text),
                 PChar(ChangeFileExt(Edit1.Text,
                                     '.bak')),
                 False);
     if RadioButton1.Checked then
        begin
             PutOnALine(Edit1.Text);
             RandomTuneCase(Edit1.Text, CheckBox2.Checked);
        end;
     if RadioButton2.Checked then
        begin
             PutOnALine(Edit1.Text);
        end;
     if RadioButton3.Checked then
        begin
             RandomTuneCase(Edit1.Text, CheckBox2.Checked);
        end;
     if MessageBox(Handle,
                   PChar('加密完成!'#13#10'现在查看效果吗?'),
                   '成功',
                   MB_ICONINFORMATION or MB_YESNO) = ID_YES then
        Panel4Click(Self);
end;

procedure TForm1.FormCreate(Sender: TObject);
var
   FPath: String;
   Index: Integer;
begin
     FPath := '';
     DragAcceptFiles(Form1.Handle, True);
     For Index := 1 to ParamCount do
         FPath := FPath + ' ' + ParamStr(Index);
     Edit1.Text := Trim(FPath);
end;

procedure TForm1.DropFiles(var Msg: TMessage);
var
   Index: Word;
   Buffer: Array [0..MAX_PATH] of Char;
begin
     Inherited;
     Edit1.Clear;
     Index := DragQueryFile(Msg.WParam, $FFFFFFFF, nil, 0);
     For Index := 0 to Index - 1 do
         DragQueryFile(Msg.WParam, Index, Buffer, MAX_PATH);
     Edit1.Text := StrPas(Buffer);
end;

end.

⌨️ 快捷键说明

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