0

我的应用程序中有一些条件编译的类。

{$IFDEF SOME_OPTION}
type
  TMyClass = class
    procedure Foo;
  end;
{$ENDIF}

...

{$IFDEF SOME_OPTION}
procedure TMyClass.Foo;
begin

end;
{$ENDIF}

该选项 SOME_OPTION 在“项目选项”-“Delphi 编译器”-“条件定义”和“项目选项”-“资源编译器”-“目录和条件”-“定义预处理器符号”中定义。

当我尝试 Ctrl+Click 他们的方法时,没有任何反应,代码导航不想工作。

我使用的是 Delphi 2010。我该如何解决这个问题?

4

3 回答 3

2

这是一个错误,它被修复的机会为零。

/ 沃伦 P

于 2012-01-29T10:22:07.340 回答
1

我不认为正确的位置是在“项目选项”-“资源编译器”中......
但是在“项目选项”-“ Delphi编译器”-“条件定义”中。

更新:
我在这里工作时尝试过 Delphi XE,无论它是否定义,或者在哪里,对于 Ctrl+Click 在所有情况下都为我工作似乎并不重要。
请注意,我安装了Andreas Hausladen 的 IDE Fix Pack 4.6.6和 DDEv Extension 2.5。你用它们吗?

更新 2:
当在同一个单元中时,它似乎工作,即使 SOME_OPTION 未定义,不是从另一个单元调用 Foo 时。但是,当它在项目选项中正确定义并
重建应用程序 时,似乎可行(您会看到调用 Foo 的行上的蓝点)。然后IDE可以使用编译器来定位其他单元中的函数源。

这就是我能想到的所有帮助。正如已经说过的,它不是 IDE 中最好的部分......

于 2012-01-16T18:57:00.283 回答
0

不工作,因为你没有很好地定义你的编译指令。指令必须按照此处http://docwiki.embarcadero.com/RADStudio/en/Delphi_compiler_directives使用 IDE部分中的描述进行定义。一个好的做法是在条件指令更改后重新编译项目。

于 2012-01-16T19:07:31.190 回答