Delphi Как распарсить отладочную информацию с своего exe
Delphi Как распарсить отладочную информацию с своего exe задача при ошибке в коде получить где произошла ошибка и значения переменных
у меня есть Jcl
я могу получить имя процедуры но переменных там нет сейчас так
{Project1.exe}VA(00294397) APP(00695397) [00695397] Ussd.dat.Main.TForm1.Panel2Click (Line 472, "Ussd.dat.Main.pas" + 5) + $5
а надо
{Project1.exe}VA(00294397) APP(00695397) [00695397] Ussd.dat.Main.TForm1.Panel2Click (Line 472, "Ussd.dat.Main.pas" + 5) + $5
var s:"Строка"
var rec:record
s:"строка"
i:12345
p:$12345
var F:TForm
Color:clwhite
и т.д т.е локальные переменные самой процедуры
Что делал где искал переменные
создал переменную в коде типа var Eewerewgdgdfgdfg:integer открыл exe в виде текста и в поисковике поискал Eewerewgdgdfgdfg она там есть значит все переменные delphi сохраняет значит можно как то к ним добраться
в jсl есть такая процедура TJclTD32InfoParser.Analyse тут начинается парсинг отладочной инфы однако сами type и local symbol пропущены или намеренно или лень писать им было или их нет вообще
with pDirHeader.DirEntries[I] do
begin
pSubsection := LfaToVa(Offset);
case SubsectionType of
SUBSECTION_TYPE_MODULE:
AnalyseModules(pSubsection, Size);
SUBSECTION_TYPE_ALIGN_SYMBOLS:
AnalyseAlignSymbols(pSubsection, Size);
SUBSECTION_TYPE_SOURCE_MODULE:
AnalyseSourceModules(pSubsection, Size);
SUBSECTION_TYPE_NAMES:
AnalyseNames(pSubsection, Size);
SUBSECTION_TYPE_GLOBAL_TYPES:
AnalyseGlobalTypes(pSubsection, Size);
else
AnalyseUnknownSubSection(pSubsection, Size); >> сюда тоже код заходит
end;
end;
но на строку
AnalyseUnknownSubSection(pSubsection, Size);
код заходит а процедура пустая
хотя данных там 273 kb в моем случаи
сохранил их в файл. думаю что там некая структура спрятана что то типа
TInfo = packed record
OverlayNumber: Word;
LibraryIndex: Word;
SegmentCount: Word;
DebuggingStyle: Word;
NameIndex: DWORD;
отрывок с файла
9Ї s $
9Ї s )
9Ї Ёs .
9Ї °s 3
Если кто знает помогите разобраться или ссылку какую где узнать какие структуры данных хранит exe и как к ним добраться