tmasha

Поля

FStack:TStringList;

FDump:String;

  • FStackFlow – снимок стека, предоставляется в типе TStringList.
    FDump - снимок дампа любой части памяти, предоставляется в типе String.

 

Методы

procedure GetTextDump(pData:Pointer; dDumpSize:DWORD);

procedure GetStackFlow(dStackSize:DWORD);

function GetStackValue(pESP:DWORD):DWORD;stdcall;

procedure SaveToFile(Filename:String); virtual;

procedure TakeScreenShot(Filename:String); virtual;

  • GetTextDump - вызывается в конструкторе и инициализирует поле FDump.
    GetStackFlow - вызывается в конструкторе и инициализирует поле FStack.
    GetStackValue - используется для получения значения стека на который указывает ESP
    SaveToFile - используется для сохранения стека и дампа памяти в файл
    TakeScreenShot - может использоваться для снимка содержания экрана (screenshot)

 

Свойства

property    Stack:TStringList read FStack;
property    Dump:String read FDump;

  • Stack - отображение стека на момент выполнения программы.
    Dump - отображение дампа любой области памяти по указателю.

 

Исходный код: Да

Лицензия: Free

Автор: Опанасюк Егор

Скачать:  с Torry.net

3 коммент.

  1. Анонимный // 15 января 2011 г. в 09:22  

    Компоновка
    [Ошибка] MashaDebug.pas(174): Undeclared identifier: 'SaveToFile'
    [Фатальная ошибка] Unit1.pas(25): Could not compile used unit 'MashaDebug.pas'

  2. Кайзер Созо // 10 апреля 2011 г. в 17:08  

    d2010 компилировал вроде нормально

  3. Анонимный // 24 марта 2012 г. в 13:15  

    В D7-2007 чтобы не было ошибки меняем SaveToFile на:
    var
    fStrings: TStringList;
    begin
    fStrings := TStringList.Create;
    try
    fStrings.Add('Dump');
    fStrings.Add(FDump);
    fStrings.Add('Stack');
    fStrings.Add(FStack.Text);
    fStrings.SaveToFile(Filename);
    finally
    fStrings.Free;
    end;
    end;