vložil Radek Červinka
30. září 2010 00:28
V minulém díle jsem začal ukazovat pár triků pro ladění a dnes je tu pokračování.
Změna řádku vykonávání
Delphi 2010+ (možná i dříve?). Opět kvalitní program pro ukázky.
program Project1;
{$APPTYPE CONSOLE}
procedure TestB;
begin
writeln('b1');
end;
procedure TestA;
begin
writeln('a1');
TestB;
end;
begin
writeln('a');
TestA;
writeln('b');
writeln('c');
end.
Od této verzi se dá měnit aktuální řádek velmi jednoduše. Prostě drapnete kurzor aktuálního řádku a přetáhnete ho kam chcete.
V případě problémů s videm klikněte na plnou verzi.
Jinak v CPU pohledu lze měnit aktuální řádek přes změnu registru EIP a to tak, že kliknete na řádek, kde chcete pokračovat a z popupmenu vyberete volbu New EIP (má i vlastní klávesovou zkratku CTRL+N). No a když už jsme v tom CPU - nyní se dá lehce kopírovat obsah tohoto okna (dříve myslím jen za pomoci CnWizards).
Call stack breakpoint
Celkem příjemné rozšíření ladění od Delphi 2007. Představme si dříve uvedený příklad, kdy jsme zanořeni do TestB a chceme se nastavit breakpoint po návratu ze zanoření (např. v případě rekurze). V takovém případě použijeme právě call stack breakpoint. V okně call stack nastavujete požadovaný breakpoint buďto kliknutím na modrý puntík nebo přes popup menu.
(screenshot je z Delphi XE)
A nezapomeňte na můj článek s tématem integrované vzdálené ladění - remote debugging v Delphi.