更早的版本忽略,我们从2006开始记录,相应的版本号判断方式:
VER180 : Delphi 10.0 CodeGear 2006/2007 VER185 : Delphi 11.0 CodeGear 2007 VER190 : Delphi 12.0 CodeGear 2008 VER200 : Delphi 13.0 CodeGear 2009 VER210 : Delphi 14.0 Embarcadero RAD Studio 2010 VER220 : Delphi 15.0 Embarcadero RAD Studio XE VER230 : Delphi 16.0 Embarcadero RAD Studio XE2 VER240 : Delphi 17.0 Embarcadero RAD Studio XE3 VER250 : Delphi 18.0 Embarcadero RAD Studio XE4| VER260 : Delphi 19.0 Embarcadero RAD Studio XE5 VER270 : Delphi 20.0 Embarcadero RAD Studio XE6 VER280 : Delphi 21.0 Embarcadero RAD Studio XE7 VER290 : Delphi 22.0 Embarcadero RAD Studio XE8
{$IFDEF VERxxx} 代码 {$ELSE} 否则 {$ENDIF}
1 2 3 4 5 6 7 8 9 | {$IFDEF VERxxx} 代码 {$ELSE} 否则 {$ENDIF} |
---|
我们还可以直接判断版本号(RTLVersion)值的方式,注意是两位整数,象VER185要写成RTLVersion=18.5而不是185:
{$IF RTLVersion>=18}//2006 代码 {$ELSE} 代码 {$IFEND}
1 2 3 4 5 | {$IF RTLVersion>=18}//2006 代码 {$ELSE} 代码 {$IFEND} |
---|
注意不知道从什么版本开始IFEND就统一成ENDIF了,编译器会有警告,不过如果要和早期的版本兼容,可以打开下面的开关:
{$LEGACYIFEND ON}
1 | {$LEGACYIFEND ON} |
---|
就没有问题了。