Информацию о классе можно получить здесь.
Пост посвящается:: Про класс
Данный класс очень тривиальный. Он может показать дамп любой области памяти и актуальный стекфлоу.
- Маше: Блог
- Марине, моей любимой жене! Сожжённая мною кастрлюля - это я не виноватый!
Спасибо за проделанную работу!))
ОтветитьУдалить(в адресе ссылки на мой блог местами перепутаны буквы: adn вместо and :)) )
Пожалуйста ) Ссылку поправил.
ОтветитьУдалитьМожно ещё получать регистры в массив:
ОтветитьУдалитьtype TRegs = array [0..7] of dword;
TClass.Method(var Regs:TRegs);
asm
pushad
mov cx,8
@lp:
dec cx
jmp @foo
@@1:
cmp cx,0
jnz @lp
ret
@foo:
pop [Regs]
add Regs,4
jmp @@1
end;
И тоже их показывать. Приходят в таком порядке, в каком их заталкивает в стек pushad. Если нужно по порядку, можно использовать следующий код:
asm
mov dword ptr [Regs], EAX
mov dword ptr [Regs+4], EBX
mov dword ptr [Regs+8], ECX
итд...
end;
тогда regs[0]=eax, regs[1]=ebx итд.
Раньше дамам сочиняли стихи, пели...а теперь классы в Delphi пишут :) Мир изменился
ОтветитьУдалить