自定义范围

时间:2009-10-05 11:06:29

标签: delphi conditional-compilation

我有一个单元,我想在两个不同的程序中使用,以区分我想要定义一个符号,然后在单元中检查它。

在我的项目DPR中,我有;

program Project1;

{$Define MYDEF}  

uses
  Forms,
  ...

在我的Form1文件中我有

procedure TForm1.FormCreate(Sender: TObject);
begin
 {$IfDef MYDEF}
   ShowMessage('boo');
 {$EndIf}
end;
然而,我没有看到嘘! 定义是否仅限于某个范围?

3 个答案:

答案 0 :(得分:3)

Delphi 2007 and {$IFDEF...} directive, fails to see our conditional

在您的项目下,将定义添加到“条件定义”

答案 1 :(得分:2)

定义是文件的本地。如果您希望它们是全局的,请将它们添加到项目选项中。

答案 2 :(得分:1)

另一个解决方案是拥有一个includefile并将其包含在所有单元和.dpr。

这个解决方案是更独立的delphi版本。

如果您的定义与Delphi版本控制有关,请查看http://www.stack.nl/~marcov/porting.pdf以获取有关如何在定义中设置系统结构的一些提示。