次の問題があります。アプリケーションを実行しているときに、デバッガーが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}
私はこれを読みました、そしてそれは私を助けませんでした。デルファイソースを除外して、自分のコードのみをデバッグするにはどうすればよいですか?