-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdb.AddEXE.pas
90 lines (79 loc) · 2.63 KB
/
db.AddEXE.pas
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
unit db.AddEXE;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.WinXCtrls;
type
TfrmAddEXE = class(TForm)
lbl1: TLabel;
lbl2: TLabel;
lbl3: TLabel;
lbl4: TLabel;
btnSave: TButton;
btnCancel: TButton;
edtPModuleName: TEdit;
edtSModuleName: TEdit;
edtFormClassName: TEdit;
edtFormTitleName: TEdit;
lbl5: TLabel;
srchbxSelectEXEFile: TSearchBox;
dlgOpenSelectEXEFile: TOpenDialog;
procedure btnSaveClick(Sender: TObject);
procedure srchbxSelectEXEFileInvokeSearch(Sender: TObject);
private
{ Private declarations }
FbResult : Boolean;
FstrPModuleName, FstrSModuleName : String;
FstrFormClassName, FstrFormTitleName: String;
FstrEXEFileName : String;
public
{ Public declarations }
end;
function ShowAddEXEForm(var strPModuleName, strSModuleName, strFormClassName, strFormTitleName, strEXEFileName: String): Boolean;
implementation
{$R *.dfm}
function ShowAddEXEForm(var strPModuleName, strSModuleName, strFormClassName, strFormTitleName, strEXEFileName: String): Boolean;
begin
with TfrmAddEXE.Create(nil) do
begin
FbResult := False;
Position := poScreenCenter;
edtPModuleName.Text := strPModuleName;
ShowModal;
Result := FbResult;
if Result then
begin
strPModuleName := FstrPModuleName;
strSModuleName := FstrSModuleName;
strFormClassName := FstrFormClassName;
strFormTitleName := FstrFormTitleName;
strEXEFileName := FstrEXEFileName;
end;
Free;
end;
end;
procedure TfrmAddEXE.btnSaveClick(Sender: TObject);
begin
FstrPModuleName := edtPModuleName.Text;
FstrSModuleName := edtSModuleName.Text;
FstrFormClassName := edtFormClassName.Text;
FstrFormTitleName := edtFormTitleName.Text;
FstrEXEFileName := srchbxSelectEXEFile.Text;
if (FstrEXEFileName <> '') and (FstrPModuleName <> '') and (FstrSModuleName <> '') and (FstrFormClassName <> '') and (FstrFormTitleName <> '') then
begin
FbResult := True;
Close;
end
else
begin
MessageBox(Application.MainForm.Handle, 'EXE 信息不能为空', '系统提示:', MB_OK or MB_ICONERROR);
Exit;
end;
end;
procedure TfrmAddEXE.srchbxSelectEXEFileInvokeSearch(Sender: TObject);
begin
if not dlgOpenSelectEXEFile.Execute(Application.MainForm.Handle) then
Exit;
srchbxSelectEXEFile.Text := dlgOpenSelectEXEFile.FileName;
edtSModuleName.Text := ChangeFileExt(ExtractFileName(dlgOpenSelectEXEFile.FileName), '') + '(EXE)';
end;
end.