在Delphi XE中调试代码

Wiz*_*ard 4 delphi debugging breakpoints delphi-xe

我很长一段时间Delphi开发,过去我在开发时使用第三方工具进行日志记录和调试(称为Smart Inspect)但是现在我已经升级到Delphi XE我想尝试使用IDE进行调试.

我的问题是,给定一个类似的功能

procedure MyFunction;
var
    str : string;
begin
    str := 'Foo';
    //Debug, show value of str?
    str := AnotherFunction(str);
    //Debug, show value of str?
end;
Run Code Online (Sandbox Code Playgroud)

我怎样才能调试并获得str的值,而不用像showmessage(str)这样的蠢事;

如果某个地方(或文章)有视频,那么我非常乐意阅读.

有没有办法观察/输出变量的值.

da-*_*oft 9

如果只想使用IDE调试器,请执行以下操作:

  • 把断点放在某个地方
  • 右键单击breakpointr圈并选择"断点属性..."
  • 按"高级"按钮显示更多选项
  • 取消选中"Break"复选框
  • 然后使用"日志消息"和"评估表达式"编辑框输入跟踪值

此类消息将发送到"事件日志"调试器窗格.右键单击窗格,然后选择"属性".你可以在那里过滤("消息")/ hilight("颜色")跟踪消息.


Mas*_*ler 8

好吧,Delphi XE带有CodeSite日志记录,但我觉得你在谈论调试器本身.

如果在例程中放置断点,它会在命中时断开调试器.从那里开始,IDE左侧有一个Local Variables窗格和一个Watches窗格.局部变量将显示所有本地变量的值,而Watches允许您设置其值将跟踪的表达式.

您还可以使用Inspect(Alt-F5)获得类似于手表的内容,但需要更详细的信息(特别是对于结构类型,如对象).此外,Evaluate/Modify(Ctrl-F7)将允许您键入表达式并对其进行评估.它不像Inspect那么详细,但它为您提供了更多的灵活性.

如果您熟悉这些工具,您会发现调试更容易.


klu*_*udg 5

1)您可以使用OutputDebugString函数将字符串输出到调试窗口

2)您可以使用CodeSite Express.我建议使用CodeRage 5中的视频作为使用CodeSite的起点