delphi仅调试我的源代码

时间:2012-12-26 14:09:15

标签: delphi delphi-xe2

  

可能重复:
  How do I stop the debugger from stepping into Delphi-supplied units?

我遇到以下问题:当我运行应用程序时,调试器进入delphi的VCL源代码。我希望它只通过我写的代码来运行。

示例:

temp := nil;
// Here is breakpoint, after that I wanna go line-by-line, so I'm hitting F7
while (Head <> nil) do begin
   if (Head^.Next = nil) then break;
   Temp := Head^.Next;
   dispose(Head); // <- here debugger goes into [*]
end;
if (Temp <> nil) then dispose(Temp);

// [*]
procedure _Dispose(P: Pointer; TypeInfo: Pointer);
{$IFDEF PUREPASCAL}
begin
  _Finalize(P, TypeInfo);
  FreeMem(P);
end;
{$ELSE}
asm
        { ->    EAX     Pointer to object to be disposed        }
        {       EDX     Pointer to type info                    }

{$IFDEF ALIGN_STACK}
        SUB     ESP, 8
{$ENDIF ALIGN_STACK}
        PUSH    EAX
        CALL    _Finalize
        POP     EAX
{$IFDEF ALIGN_STACK}
        SUB     ESP, 4
{$ENDIF ALIGN_STACK}
        CALL    _FreeMem
{$IFDEF ALIGN_STACK}
        ADD     ESP, 12
{$ENDIF ALIGN_STACK}
end;
{$ENDIF !PUREPASCAL}

我看过this,但它没有帮助我。如何排除delphi源代码,只调试我的代码?

1 个答案:

答案 0 :(得分:9)

查看Project->Options菜单项。转到编译器选项,应该有一个设置“使用调试DCU”。确保没有选中它,你应该停止追踪标准库源。