2014-09-04 38 views
3

我想編譯我的XE2項目沒有單位別名,但不能讓它工作。我怎樣纔能有一個沒有單位別名的Delphi XE2項目?

我試過如下:

  1. 在* .dproj <DCC_UnitAlias />
  2. <DCC_UnitAlias>$(DCC_UnitAlias)</DCC_UnitAlias>
  3. <DCC_UnitAlias>;$(DCC_UnitAlias)</DCC_UnitAlias>
  4. 在* .dproj沒有DCC_UnitAlias進入

這些要麼導致編譯器錯誤
[DCC Fataler Fehler] F1030 Ungültige Compileranweisung: '-A;Generics.Collections=System.Generics.Collections;...
(這相當於像[DCC Fatal error] F1030 Invalid compiler directive: '-A;Generics.Collections=System.Generics.Collections;...

或一些默認aliasses列入:
-AGenerics.Collections=System.Generics.Collections;Generics.Defaults=System.Generics.Defaults;WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE

我知道這是不是一個大問題,但它在某種程度上讓我很煩。 :-)

FWIW:<DCC_UnitAlias />適用於D2007。

+0

從IDE的項目設置對話框中刪除別名? – 2014-09-04 11:27:31

+0

這會導致#4。 : -/ – 2014-09-04 11:28:58

+0

無論如何,我不是很懂這個問題,因爲我不會說德語。抱歉。 – 2014-09-04 11:31:24

回答

1

在Delphi 10.1下,它看起來像默認的單元別名在文件$(BDS)\ Bin \ CodeGear.Common.Targets中被無條件添加。我認爲它在XE2中類似,但沒有安裝它來檢查。

<UnitAliases>Generics.Collections=System.Generics.Collections;Generics.Defaults=System.Generics.Defaults;WinTypes=Winapi.Windows;WinProcs=Winapi.Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE</UnitAliases> 
<UnitAliases Condition="'$(DCC_UnitAlias)'!=''">$(DCC_UnitAlias)$(UnitAliases)</UnitAliases> 

刪除第一個UnitAliases標籤應該讓您在每個項目的基礎上更準確地指定您的默認值。不過,請注意文件頂部的「不要修改」警告。

相關問題