2013-04-07 47 views
4

我在2007年德爾福製成的部件,現在我希望把它用Delphi的新版本的工作,所以我必須從
uses Controls;
改變用途,以
uses {$if CompilerVersion > 21}Vcl.Controls{$else}Controls{$ifend};
但我不知道我必須編寫的編譯器版本。任何人都知道嗎?從哪個版本「vclunit.pas」更改爲「Vcl.vclunit.pas」?

+1

或者你可以確保'Vcl'項目的單位範圍的名稱定義,而不必擔心這些條件句。 – 2013-04-07 16:10:25

+2

@Jerry該選項可供應用程序開發人員使用,但不適用於組件開發人員。組件不應該對使用它的應用程序做出假設。 – 2013-04-07 16:41:19

+0

@DavidHeffernan非常真實。 – 2013-04-07 16:43:04

回答

5

單元範圍名稱是在XE2中引入的。而XE2是編譯器版本23.所以,有條件的是:

{$if CompilerVersion >= 23}