Skip to content

Commit f8e4f35

Browse files
1.6.50
* Добавлен поиск ссылок на указаный адрес * Добавлен поиск по маске * Сохранение результатов поиска в файл
1 parent b10c2d9 commit f8e4f35

12 files changed

Lines changed: 556 additions & 81 deletions

MemoryMap/MemoryMap.Core.pas

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
// * Purpose : Базовый класс собирающий информацию о карте памяти процесса
77
// * Author : Александр (Rouse_) Багель
88
// * Copyright : © Fangorn Wizards Lab 1998 - 2026.
9-
// * Version : 1.4.38
9+
// * Version : 1.4.39
1010
// * Home Page : http://rouse.drkb.ru
1111
// * Home Blog : http://alexander-bagel.blogspot.ru
1212
// ****************************************************************************
@@ -36,8 +36,8 @@ interface
3636
MemoryMap.DebugMapData;
3737

3838
const
39-
MemoryMapVersionInt = $01040026;
40-
MemoryMapVersionStr = '1.4 (revision 38)';
39+
MemoryMapVersionInt = $01040027;
40+
MemoryMapVersionStr = '1.4 (revision 39)';
4141

4242
type
4343
// Типы фильтров

MemoryMap/MemoryMap.DebugMapData.pas

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
// * Unit Name : MemoryMap.DebugMapData.pas
66
// * Purpose : Класс для работы с отладочным MAP файлом.
77
// * Author : Александр (Rouse_) Багель
8-
// * Copyright : © Fangorn Wizards Lab 1998 - 2024.
9-
// * Version : 1.4.36
8+
// * Copyright : © Fangorn Wizards Lab 1998 - 2026.
9+
// * Version : 1.4.39
1010
// * Home Page : http://rouse.drkb.ru
1111
// * Home Blog : http://alexander-bagel.blogspot.ru
1212
// ****************************************************************************
@@ -35,6 +35,8 @@ TDebugMapItem = record
3535
Executable: Boolean;
3636
end;
3737

38+
TLoadCallback = reference to procedure (Current, Total: Integer);
39+
3840
TDebugMap = class
3941
private type
4042
TSectionData = record
@@ -58,7 +60,8 @@ TLineData = record
5860
constructor Create;
5961
destructor Destroy; override;
6062
procedure Clear;
61-
procedure Init(BaseAddress: ULONG_PTR; const ModulePath: string);
63+
procedure Init(BaseAddress: ULONG_PTR; const ModulePath: string); overload;
64+
procedure Init(BaseAddress: ULONG_PTR; const ModulePath: string; ACallback: TLoadCallback); overload;
6265
function GetAddrFromDescription(const Value: string): ULONG_PTR;
6366
function GetDescriptionAtAddr(Address: ULONG_PTR;
6467
AddModuleName: Boolean = True): string;
@@ -246,7 +249,8 @@ function TDebugMap.GetLineNumberAtAddrForced(BaseAddress: ULONG_PTR;
246249
end;
247250
end;
248251

249-
procedure TDebugMap.Init(BaseAddress: ULONG_PTR; const ModulePath: string);
252+
procedure TDebugMap.Init(BaseAddress: ULONG_PTR; const ModulePath: string;
253+
ACallback: TLoadCallback);
250254
var
251255
I, Count: Integer;
252256
Line: string;
@@ -258,6 +262,8 @@ procedure TDebugMap.Init(BaseAddress: ULONG_PTR; const ModulePath: string);
258262
Result := I < Count;
259263
if Result then
260264
Line := Trim(MapFile[I]);
265+
if Assigned(ACallback) then
266+
ACallback(I, Count);
261267
end;
262268

263269
procedure SkipEmptyLines;
@@ -519,6 +525,11 @@ procedure TDebugMap.Init(BaseAddress: ULONG_PTR; const ModulePath: string);
519525
end;
520526
end;
521527

528+
procedure TDebugMap.Init(BaseAddress: ULONG_PTR; const ModulePath: string);
529+
begin
530+
Init(BaseAddress, ModulePath, nil);
531+
end;
532+
522533
function TDebugMap.ModuleLoaded(const ModuleName: string): Boolean;
523534
var
524535
I: Integer;

ProcessMM.dproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@
7777
</PropertyGroup>
7878
<PropertyGroup Condition="'$(Base)'!=''">
7979
<SanitizedProjectName>ProcessMM</SanitizedProjectName>
80-
<VerInfo_Keys>CompanyName=;FileDescription=Tool for examining process memory;FileVersion=1.6.49.2527;InternalName=pmm.exe;LegalCopyright=© Alexander (Rouse_) Bagel;LegalTrademarks=;OriginalFilename=ProcessMM.exe;ProductName=Process Memory Map;ProductVersion=1.6;Comments=</VerInfo_Keys>
80+
<VerInfo_Keys>CompanyName=;FileDescription=Tool for examining process memory;FileVersion=1.6.50.2555;InternalName=pmm.exe;LegalCopyright=© Alexander (Rouse_) Bagel;LegalTrademarks=;OriginalFilename=ProcessMM.exe;ProductName=Process Memory Map;ProductVersion=1.6;Comments=</VerInfo_Keys>
8181
<Manifest_File>None</Manifest_File>
8282
<VerInfo_Locale>1033</VerInfo_Locale>
8383
<Icon_MainIcon>ProcessMM_Icon1.ico</Icon_MainIcon>
@@ -91,8 +91,8 @@
9191
<DCC_K>false</DCC_K>
9292
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
9393
<VerInfo_MinorVer>6</VerInfo_MinorVer>
94-
<VerInfo_Release>49</VerInfo_Release>
95-
<VerInfo_Build>2527</VerInfo_Build>
94+
<VerInfo_Release>50</VerInfo_Release>
95+
<VerInfo_Build>2555</VerInfo_Build>
9696
<DCC_MapFile>3</DCC_MapFile>
9797
<DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
9898
<VerInfo_PreRelease>true</VerInfo_PreRelease>
@@ -170,7 +170,7 @@ $(PreBuildEvent)]]></PreBuildEvent>
170170
<DCC_Define>MP;$(DCC_Define)</DCC_Define>
171171
<DCC_IntegerOverflowCheck>true</DCC_IntegerOverflowCheck>
172172
<DCC_RangeChecking>true</DCC_RangeChecking>
173-
<Debugger_RunParams>self -resources</Debugger_RunParams>
173+
<Debugger_RunParams>19528</Debugger_RunParams>
174174
</PropertyGroup>
175175
<ItemGroup>
176176
<DelphiCompile Include="$(MainSource)">

ProcessMM.res

0 Bytes
Binary file not shown.

README.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
Под более старыми версиями Delphi работоспособность ProcessMemoryMap не проверялась и не гарантируется.
4040

4141
### Внутренние версии фреймворков:
42-
* MemoryMap Core - 1.4.38
42+
* MemoryMap Core - 1.4.39
4343
* RawScanner Core - 1.2.27
4444
* FWZip - 2.0.10
4545
* Distorm - 3.5.3
@@ -58,6 +58,11 @@
5858

5959
### Обновления:
6060

61+
1.6.50 от 15.06.2026
62+
* Добавлен поиск ссылок на указаный адрес
63+
* Добавлен поиск по маске
64+
* Сохранение результатов поиска в файл
65+
6166
1.6.49 от 04.06.2026
6267
* Добавлен механизм отката патчей в удаленном процессе
6368

src/gui/uFindData.dfm

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,9 @@ object dlgFindData: TdlgFindData
2020
OnCreate = FormCreate
2121
OnShow = FormShow
2222
PixelsPerInch = 144
23+
DesignSize = (
24+
743
25+
170)
2326
TextHeight = 21
2427
object Label1: TLabel
2528
Left = 24
@@ -54,6 +57,15 @@ object dlgFindData: TdlgFindData
5457
Margins.Bottom = 5
5558
Caption = 'Start (HEX):'
5659
end
60+
object btnHelp: TSpeedButton
61+
Left = 693
62+
Top = 48
63+
Width = 29
64+
Height = 29
65+
Anchors = [akTop, akRight]
66+
Caption = '?'
67+
OnClick = btnHelpClick
68+
end
5769
object btnCancel: TButton
5870
Left = 609
5971
Top = 123
@@ -129,7 +141,7 @@ object dlgFindData: TdlgFindData
129141
object cbSearchText: TComboBox
130142
Left = 72
131143
Top = 48
132-
Width = 650
144+
Width = 613
133145
Height = 29
134146
Margins.Left = 5
135147
Margins.Top = 5

0 commit comments

Comments
 (0)