Reputation: 29
Suppose I have a class TCar which supports interface ICar and is derived from TInterfacedObject.
program Project1;
{$APPTYPE CONSOLE}
{$R *.res}
uses
System.SysUtils;
type
ICar = interface
['{EF3294ED-7D3B-4B5D-8E10-FA9E406477D2}']
procedure Start;
end;
TCar = class(TInterfacedObject, ICar)
private
procedure Start;
end;
procedure TCar.Start;
begin
WriteLn('Started!');
end;
var
car: ICar;
begin
try
car := TCar.Create;
car.Start;
{ TODO -oUser -cConsole Main : Insert code here }
except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end;
end.
When I debug the code above in 32 bit mode I am able to step in to method "Start" of the TCar class, moreover when I hover mouse over car variable I see that it is "TCar(address) as ICar" but when I try to debug this code in 64 bit mode I cannot step in to method "Start" (the debug execution just passes to the next line below the method call without stepping in) and I see "Pointer(address) as ICar" when I move mouse over car variable. What am I doing wrong? Being able to to step in to methods is very crucial in my project.
The Delphi XE8 has been installed recently on a clean machine and no antivirus has been installed.
Upvotes: 1
Views: 102