2016-02-29 109 views
1

我在一個項目組中工作,項目組由3個具有公共單位的項目組成。多項目條件編譯德爾福

在項目1,我寫項目中的源:

program Project2; 
{$DEFINE SECONDPROJECT} 
uses 
    ..... 

然後,在型動物單位代碼我寫:

program Project1; 
{$DEFINE FIRSTPROJECT} 
uses 
    ..... 

在項目2,i。在項目源寫

... 
{$IFDEF FIRSTPROJECT} 
do this 
{$ELSE} 
do that 
{$ENDIF} 
... 

第一個項目代碼從來沒有編譯過(它只是忽略)。但是,如果我把{$ DEFINE FIRSTPROJET}放在同一個單元中,那麼它工作...(在Delphi2009中)。

如何傳播我的編譯指令拋出所有使用的文件?只取決於我想要編譯哪個項目...

回答

1

$DEFINE指令對它們所在的單元是局部的。如果將它們放在項目源文件,.dpr文件中,則它們僅適用於該.dpr文件。

您需要通過使用Project Options dialog將條件定義添加到您的每個項目中。

+0

它正常工作。 – ffert2907

+1

或將它們放入包含每個單元/程序的.INC中 –