forked from AlexanderBagel/ProcessMemoryMap
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathuMemoryMapListInfoSettings.pas
More file actions
91 lines (80 loc) · 2.78 KB
/
Copy pathuMemoryMapListInfoSettings.pas
File metadata and controls
91 lines (80 loc) · 2.78 KB
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
91
////////////////////////////////////////////////////////////////////////////////
//
// ****************************************************************************
// * Project : ProcessMM
// * Unit Name : uMemoryMapListInfoSettings.pas
// * Purpose : Диалог настроек для процедуры сканирования памяти
// * Author : Александр (Rouse_) Багель
// * Copyright : © Fangorn Wizards Lab 1998 - 2016, 2023.
// * Version : 1.4.30
// * Home Page : http://rouse.drkb.ru
// * Home Blog : http://alexander-bagel.blogspot.ru
// ****************************************************************************
// * Stable Release : http://rouse.drkb.ru/winapi.php#pmm2
// * Latest Source : https://github.com/AlexanderBagel/ProcessMemoryMap
// ****************************************************************************
//
unit uMemoryMapListInfoSettings;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.Buttons, Vcl.StdCtrls, Vcl.ExtCtrls,
uBaseForm;
type
TdlgMemoryMapListInfoSettings = class(TBaseAppForm)
OpenMMListDialog: TOpenDialog;
edMML: TLabeledEdit;
SpeedButton1: TSpeedButton;
cbShowMiniDump: TCheckBox;
cbShowDisasm: TCheckBox;
cbDumpSize: TComboBox;
Label1: TLabel;
cbSave: TCheckBox;
edSave: TLabeledEdit;
SpeedButton2: TSpeedButton;
SaveResultDialog: TSaveDialog;
cbSaveFullDump: TCheckBox;
Bevel1: TBevel;
Button1: TButton;
Button2: TButton;
cbSaveIfWrongCRC: TCheckBox;
cbGenerateMML: TCheckBox;
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
dlgMemoryMapListInfoSettings: TdlgMemoryMapListInfoSettings;
implementation
{$R *.dfm}
procedure TdlgMemoryMapListInfoSettings.Button2Click(Sender: TObject);
begin
if not FileExists(edMML.Text) then
raise Exception.CreateFmt('File "%s" not found.', [edMML.Text]);
if cbSave.Checked then
begin
if edSave.Text = '' then
raise Exception.Create('Path to result file is empty.');
try
TFileStream.Create(edSave.Text, fmCreate).Free;
except
raise Exception.CreateFmt('Can not create result file "%s".', [edSave.Text]);
end;
end;
ModalResult := mrOk;
end;
procedure TdlgMemoryMapListInfoSettings.SpeedButton1Click(Sender: TObject);
begin
if OpenMMListDialog.Execute then
edMML.Text := OpenMMListDialog.FileName;
end;
procedure TdlgMemoryMapListInfoSettings.SpeedButton2Click(Sender: TObject);
begin
if SaveResultDialog.Execute then
edSave.Text := SaveResultDialog.FileName;
end;
end.