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 и как к ним добраться


Ответы (0 шт):