【Delphi】 Delphi版本号对照

VER300    Delphi Seattle / C++Builder Seattle    23    230
    (Delphi:Win32/Win64/OSX/iOS32/iOS64/Android) (C++Builder:Win32/Win64/OSX/iOS32/iOS64/Android)        
VER290    Delphi XE8 / C++Builder XE8    22    220
    (Delphi:Win32/Win64/OSX/iOS32/iOS64/Android) (C++Builder:Win32/Win64/OSX/iOS32/iOS64/Android)        
VER280    Delphi XE7 / C++Builder XE7    21    210
    (Delphi:Win32/Win64/OSX/iOS/Android) (C++Builder:Win32/Win64/OSX/iOS/Android)        
VER270    Delphi XE6 / C++Builder XE6    20    200
    (Delphi:Win32/Win64/OSX/iOS/Android) (C++Builder:Win32/Win64/OSX/iOS/Android)        
VER260    Delphi XE5 / C++Builder XE5    19    190
    (Delphi:Win32/Win64/OSX/iOS/Android) (C++Builder:Win32/Win64/OSX/iOS)        
VER250    Delphi XE4 / C++Builder XE4    18    180
    (Delphi:Win32/Win64/OSX/iOS) (C++Builder:Win32/Win64/OSX)        
VER240    Delphi XE3 / C++Builder XE3    17    170
    (Delphi:Win32/Win64/OSX) (C++Builder:Win32/Win64/OSX)        
VER230    Delphi XE2 / C++Builder XE2    16    160
    (Delphi:Win32/Win64/OSX) (C++Builder:Win32/OSX)        
            161 is the version for the five FireMonkey packages at XE2 Update 2:
            fmi161.bpl, fmx161.bpl, fmxase161.bpl, fmxdae161.bpl, and fmxobj161.bpl.
VER220    Delphi XE / C++Builder XE (Win32)    15    150
VER210    Delphi 2010 / C++Builder 2010 (Win32)    14    140
VER200    Delphi 2009 / C++Builder 2009 (Win32)    12    120
VER190    Delphi 2007 for .Net *    11    110
VER180 or VER185    Delphi 2007 / C++Builder 2007 for Win32 *    11    110
VER180    Delphi 2006 / C++Builder 2006 (Win32/.Net) and Delphi/C++Builder 2007 for Win32    10    100
VER170    Delphi 2005 (Win32/.Net)    9    90
VER160    Delphi 8 for .Net    8    80
VER150    Delphi 7 (and 7.1)    7    70
VER140    Delphi 6 / C++Builder 6    6    60
VER130    Delphi 5 / C++Builder 5    5    NA
VER125    C++Builder 4    4    NA
VER120    Delphi 4    4    NA
VER110    C++Builder 3    3    NA
VER100    Delphi 3    3    NA
VER93    C++Builder 1    NA    NA
VER90    Delphi 2    2    NA
VER80    Delphi 1    1    NA
VER70    Borland Pascal 7.0    NA    NA
VER15    Turbo Pascal for Windows 1.5    NA    NA
VER10    Turbo Pascal for Windows 1.0    NA    NA
VER60    Turbo Pascal 6.0    NA    NA
VER55    Turbo Pascal 5.5    NA    NA
VER50    Turbo Pascal 5.0    NA    NA
VER40    Turbo Pascal 4.0    NA    NA
VER30  : Turbo Pascal 3
VER20  : Turbo Pascal 2
VER10  :Turbo Pascal 1

编译时可以判断版本号:

 

{$IF CompilerVersion >= 18.5}
//some code only compiled for Delphi 2007 and later
{$IFEND}


Delphi 10.1 Berlin  - 31

Delphi XE3  - 24
Delphi XE2  - 23

Delphi XE   - 22
Delphi 2010 - 21
Delphi 2009 - 20
Delphi 2007 - 18.5
Delphi 2006 - 18
Delphi 2005 - 17
Delphi 8    - 16
Delphi 7    - 15
Delphi 6    - 14

判断当前 Delphi 的运行库版本:

procedure TForm1.FormCreate(Sender: TObject);
begin
  Edit1.Text := FloatToStr(System.CompilerVersion);
end;

 

Compiler Directives

Delphi Compiler Directive
Associated Symbol
Align fields (Delphi) {A},{A},{ALIGN}
Application type (Delphi) {$APPTYPE}
Assert directives (Delphi) {C},{C},{ASSERTIONS}
Boolean short-circuit evaluation (Delphi compiler directive) {B},{B},{BOOLEVAL}
Code align (Delphi) {$CODEALIGN}
Conditional compilation (Delphi) {IFDEF}, {IFDEF}, {IFNDEF}, {IF}, {IF}, {ELSEIF}, {ELSE}, {ELSE}, {ENDIF}, {$IFEND}
Debug information (Delphi) {D},{D},{DEBUGINFO}
DEFINE directive (Delphi) {$DEFINE}
DENYPACKAGEUNIT directive (Delphi) {$DENYPACKAGEUNIT}
Description (Delphi) {D},{D},{DESCRIPTION}
DESIGNONLY directive (Delphi) {$DESIGNONLY}
ELSE (Delphi) {$ELSE}
ELSEIF (Delphi) {$ELSEIF}
ENDIF directive (Delphi) {$ENDIF}
Executable extension (Delphi) {E},{E},{EXTENSION}
Export symbols (Delphi) {$ObjExportAll}
Extended syntax (Delphi) {X},{X},{EXTENDEDSYNTAX}
Extended type compatibility (Delphi) {$EXTENDEDCOMPATIBILITY}
External Symbols (Delphi) {$EXTERNALSYM [ 'typeNameInHpp' [ 'typeNameInHppUnion' ]]}
Floating point precision control (Delphi for x64) {$EXCESSPRECISION}
HIGHCHARUNICODE directive (Delphi) {$HIGHCHARUNICODE}
Hints (Delphi) {$HINTS}
HPP emit (Delphi) {$HPPEMIT}
IFDEF directive (Delphi) {$IFDEF}
IF directive (Delphi) {$IF}
IFEND directive (Delphi) {$IFEND}
IFNDEF directive (Delphi) {$IFNDEF}
IFOPT directive (Delphi) {$IFOPT}
Image base address {$IMAGEBASE}
Implicit Build (Delphi) {$IMPLICITBUILD}
Imported data {G},{G},{IMPORTEDDATA}
Include file (Delphi) {I},{I},{INCLUDE}
Input output checking (Delphi) {I},{I},{IOCHECKS}
Compiler directives for libraries or shared objects (Delphi) {LIBPREFIX}, {LIBPREFIX}, {LIBSUFFIX}, {$LIBVERSION}
Legacy IFEND (Delphi) {$LEGACYIFEND}
Link object file (Delphi) {L file},{L file},{LINK file}
Local symbol information (Delphi) {L+},{L+},{LOCALSYMBOLS}
Long strings (Delphi) {H},{H},{LONGSTRINGS}
Memory allocation sizes (Delphi) {M},{M},{MINSTACKSIZE},{$MAXSTACKSIZE}
MESSAGE directive (Delphi) {$MESSAGE }
METHODINFO directive (Delphi) {$METHODINFO}
Minimum enumeration size (Delphi) {Z1},{Z1},{Z2},{Z4},{Z4},{MINENUMSIZE 1},{MINENUMSIZE 2},{MINENUMSIZE 2},{MINENUMSIZE 4}
NODEFINE directive (Delphi) {$NODEFINE [ 'typeNameInHpp' [ 'typeNameInHppUnion' ]]}
NOINCLUDE (Delphi) {$NOINCLUDE}
OBJTYPENAME directive (Delphi) {$OBJTYPENAME typeIdent ['{B|N}typeNameInObj']}
Old type layout (Delphi) {$OLDTYPELAYOUT ON}
Open String Parameters (Delphi) {P},{P},{OPENSTRINGS}
Optimization (Delphi) {O},{O},{OPTIMIZATION}
Overflow checking (Delphi) {Q},{Q},{OVERFLOWCHECKS}
PE (portable executable) header flags (Delphi) {SetPEFlags},{SetPEFlags},{SetPEOptFlags}
PE header operating system version {$SETPEOSVERSION}
PE header subsystem version {$SETPESUBSYSVERSION}
PE header user version {$SETPEUSERVERSION}
Pentium-safe FDIV operations (Delphi) {U},{U},{SAFEDIVIDE}
Pointer Math (Delphi) {$POINTERMATH}
Range checking {R},{R},{RANGECHECKS}
Real48 compatibility (Delphi) {$REALCOMPATIBILITY}
Regions {REGION},{REGION},{ENDREGION}
Reserved address space for resources (Delphi, Linux) {M},{M},{RESOURCERESERVE}
Resource file (Delphi) {R},{R},{RESOURCE}
RTTI directive (Delphi) {$RTTI INHERIT|EXPLICIT}
RUNONLY directive (Delphi) {$RUNONLY}
Run-Time Type Information (Delphi) {M},{M},{TYPEINFO}
Scoped Enums (Delphi) {$SCOPEDENUMS}
Stack frames (Delphi) {W},{W},{STACKFRAMES}
Strong link types (Delphi) {$STRONGLINKTYPES}
Symbol declaration and cross-reference information (Delphi) {Y},{Y},{REFERENCEINFO},{DEFINITIONINFO}
Type-checked pointers (Delphi) {T},{T},{TYPEDADDRESS}
UNDEF directive (Delphi) {$UNDEF}
Var-string checking (Delphi) {V},{V},{VARSTRINGCHECKS}
Warning messages (Delphi) {$WARN}
Warnings (Delphi) {$WARNINGS}
Weak packaging {$WEAKPACKAGEUNIT}
WEAKLINKRTTI directive (Delphi) {$WEAKLINKRTTI}
Writeable typed constants (Delphi) {J},{J},{WRITEABLECONST}
Zero-based strings (Delphi) {$ZEROBASEDSTRINGS}

Predefined Conditionals

 

Category
Symbol DCC32 DCC64 DCCOSX DCCIOSARM DCCIOS32 DCCAARM DCCIOSARM64 Comments
  Since XE2     Since XE2     Since XE3     Since XE3   In XE5 Since XE8
Compiler DCC DEFINED DEFINED DEFINED DEFINED DEFINED DEFINED DEFINED  
VER310 DEFINED DEFINED DEFINED DEFINED DEFINED DEFINED DEFINED For Delphi XE8, compiler version 29.0 has VER310 defined.
 
For a list of compiler
versions, see Compiler
Versions.
Platform CONSOLE DEFINED DEFINED DEFINED DEFINED DEFINED DEFINED DEFINED Defined if an application is being compiled as a console application.
IOS not defined not defined not defined DEFINED DEFINED N/A DEFINED Defined if the target platform is iOS.
*New* in XE4/iOS
NATIVECODE DEFINED DEFINED DEFINED DEFINED DEFINED DEFINED DEFINED Since Delphi.Net
MSWINDOWS DEFINED DEFINED not defined not defined not defined not defined not defined Indicates that the operating environment is Windows. Use MSWINDOWS 
to test for any flavor of the Windows platform instead of WIN32.
WIN32 DEFINED not defined not defined not defined not defined not defined not defined Target platform is the native 32-bit Windows platform.
WIN64 not defined DEFINED not defined not defined not defined not defined not defined Target platform is 64-bit Windows.
*New* in XE2/x64
MACOS not defined not defined DEFINED DEFINED DEFINED not defined not defined Target platform is Mac OS X.
*New* in XE2/OSX
MACOS32 not defined not defined DEFINED DEFINED DEFINED not defined not defined Target platform is 32-bit Mac OS X.
*New* in XE2/OSX
LINUX not defined not defined not defined not defined not defined not defined not defined Since Kylix
LINUX32 not defined not defined not defined not defined not defined not defined not defined Since Kylix
POSIX not defined not defined DEFINED DEFINED DEFINED DEFINED DEFINED Since Kylix
POSIX32 not defined not defined DEFINED DEFINED DEFINED DEFINED DEFINED Since Kylix
ANDROID not defined not defined not defined not defined not defined DEFINED not defined Defined if the target platform is Android.
*New in XE5
CPU CPUARM not defined not defined not defined DEFINED not defined DEFINED DEFINED Defined if the CPU is based on the ARM architecture, such as the Delphi 
mobile compiler for the iOS device (DCCIOSARM.EXE).
*New* in XE4/iOS
CPU386 DEFINED not defined DEFINED not defined DEFINED not defined not defined Indicates that the CPU is an Intel 386 or later.
CPUX86 DEFINED not defined DEFINED not defined DEFINED not defined not defined CPU is an Intel 386 or later on any platform.
*New* in XE2/x64
CPUX64 not defined DEFINED not defined not defined not defined not defined not defined The CPU supports the x86-64 instruction set, and is in a 64-bit environment.
*New* in XE2/x64
CPU32BITS DEFINED not defined DEFINED DEFINED DEFINED DEFINED not defined The CPU is in a 32-bit environment, such as DCC32.EXE.
*New* in XE8
CPU64BITS not defined DEFINED not defined not defined not defined not defined DEFINED The CPU is in a 64-bit environment, such as DCC64.EXE.
*New* in XE8
CPUARM32 not defined not defined not defined DEFINED not defined DEFINED not defined The CPU is in a 32-bit ARM environment, such as DCCIOSARM.EXE.
*New* in XE8
CPUARM64 not defined not defined not defined not defined not defined not defined DEFINED The CPU is in a 64-bit ARM environment, such as DCCIOSARM64.EXE.
*New* in XE8
Availability                  
ALIGN_STACK not defined not defined DEFINED not defined DEFINED not defined not defined Defined in code that may be shared with the OS X compiler and another compiler
on another platform such as Linux that does not have a rigid stack alignment
requirement. For more information, see Eli Boling's blog at
http://blogs.embarcadero.com/eboling/2009/05/20/5607 .
*New* in XE2/OSX
ASSEMBLER DEFINED DEFINED DEFINED not defined DEFINED not defined not defined Assembler syntax is accepted.
AUTOREFCOUNT not defined not defined not defined DEFINED DEFINED DEFINED DEFINED Defined for compilers that use automatic reference counting, such as the Delphi
mobile compilers.
*New* in XE4/iOS
EXTERNALLINKER not defined not defined not defined DEFINED not defined DEFINED DEFINED Defined for compilers that have an external linker and the LLVM code generator; the 
Delphi mobile compilers have the external ld linker and use LLVM as code generator.
*New* in XE4/iOS
UNICODE DEFINED DEFINED DEFINED DEFINED DEFINED DEFINED DEFINED UNICODE is defined as the default string type.
CONDITIONALEXPRESSIONS DEFINED DEFINED DEFINED DEFINED DEFINED DEFINED DEFINED Tests for the use of the $IF directive.
ELF not defined not defined not defined not defined not defined not defined not defined Defined when targeting Executable and Linkable Format (ELF) files.
NEXTGEN not defined not defined not defined DEFINED DEFINED DEFINED DEFINED Defined for compilers (such as the Delphi mobile compilers) that use 
"next-generation" language features, such as 0-based strings.
*New* in XE4/iOS
PC_MAPPED_EXCEPTIONS not defined not defined DEFINED not defined DEFINED not defined not defined Defined when compiling on a platform or for a target platform that uses address
maps instead of stack frames to unwind exceptions (such as OS X).
*New* in XE2.
PIC never never DEFINED if -P is specified never DEFINED if 
-P is specified
always defined never Defined for platforms that require Position-Independent Code (PIC), such as OS X.
UNDERSCOREIMPORTNAME DEFINED not defined DEFINED not defined DEFINED not defined not defined Defined for compilers that add a leading underscore (for example, in names of 
dynamic libraries imported from Mac OS).
*New* in XE4/iOS
WEAKREF not defined not defined not defined DEFINED DEFINED DEFINED DEFINED Defined for compilers that can use weak references (the [weak] attribute).
*New* in XE4/iOS
WEAKINSTREF not defined not defined not defined DEFINED DEFINED DEFINED DEFINED Defined when weak references are defined for instances.
*New* in XE4/iOS
WEAKINTFREF not defined not defined not defined DEFINED DEFINED DEFINED DEFINED Defined when weak references are defined for interfaces.
*New* in XE4/iOS
                 

In the table column heads:

  • DCC32 is the 32-bit Windows Delphi compiler.
  • DCC64 is the 64-bit Windows Delphi compiler.
  • DCCOSX is the Mac OS X Delphi compiler.
  • DCCIOSARM is the Delphi compiler for 32-bit iOS Devices.
  • DCCIOS32 is the Delphi compiler for iOS Simulators.
  • DCCAARM.EXE is the Delphi compiler for Android devices.
  • DCCIOSARM64 is the Delphi compiler for 64-bit iOS devices.

 

1
2
3
4
5
6
7
8
{$IFDEF CONDITIONALEXPRESSIONS}
    {$IF CompilerVersion >= 17.0}
      {$DEFINE HAS_INLINE}
    { $IFEND }
    {$IF RTLVersion >= 14.0}
      {$DEFINE HAS_ERROUTPUT}
    { $IFEND }
{ $ENDIF }
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Delphi是一种基于Object Pascal语言的编程环境及集成开发工具(IDE),而GDI+是Windows操作系统下的绘图API。Delphi GDI+ 是Delphi语言针对GDI+ API的封装和扩展,以方便开发者在Delphi环境下使用GDI+。 目前,Delphi GDI+的最新版本Delphi 10.4 Sydney中自带的GDI+库。Delphi 10.4 Sydney是Embarcadero发布的最新版本,其中包含了许多新功能和改进,也对GDI+进行了更新。 在Delphi 10.4 Sydney中,开发者可以直接使用GDI+的各种功能来实现高质量的图形渲染、图像处理以及动画效果等。同时,Delphi 10.4 Sydney还提供了一些新的API和组件,使得开发者可以更方便地使用和集成GDI+。 使用Delphi GDI+,开发者可以轻松地创建自定义的绘图表面,并在其上绘制各种图形元素,如线条、矩形、椭圆等。同时,开发者还能够利用GDI+的强大功能进行图像的处理,如缩放、旋转、裁剪以及颜色调整等。 总之,Delphi GDI+可以提供给Delphi开发者强大且灵活的绘图和图像处理能力。通过使用最新版本Delphi 10.4 Sydney,开发者可以享受更加先进和高效的GDI+功能,从而实现更出色的应用程序。 ### 回答2: 目前,Delphi GDI+的最新版本Delphi Rio 10.3.3自带的GDI+库。GDI+是一种图形设备接口,可以在Delphi中实现高级的图形绘制和处理功能。Delphi Rio 10.3.3的GDI+库具有新增的功能和改进的性能。可以通过在RAD Studio安装向导中选择安装GDI+库来获得最新版本Delphi GDI+库提供了一系列的类和函数,使开发者能够创建和编辑图像、绘制图形、实现图像转换、旋转等操作。开发者可以使用GDI+库创建自定义的绘图应用程序,如图像编辑器、绘图工具等。同时,GDI+还支持各种常见的图像文件格式,如JPEG、PNG、BMP等,并提供了高质量的图像压缩和解压缩功能。 使用Delphi GDI+库的优势之一是它的易用性。Delphi提供了直观的界面和丰富的文档,使开发者能够轻松地上手使用GDI+库。此外,Delphi的编译器也具备强大的优化能力,能够生成高效的代码,提高应用程序的性能。 总之,Delphi GDI+的最新版本为开发者提供了一种强大而简便的图形处理解决方案。无论是创建图像编辑器、绘图工具,还是实现图像处理和转换功能,Delphi GDI+都能满足开发者的需求,并帮助开发者实现高效且具有吸引力的图形应用程序。 ### 回答3: Delphi GDIPlus 是一个图形库,使用GDI+技术为Delphi开发者提供了丰富的图形处理功能。GDI+是微软公司开发的图形设备接口,它可以处理图像、绘制图形、渲染文本以及其他图形操作。 最新版本Delphi GDIPlus是基于GDI+1.1开发的,提供了更多的功能和性能优化。它允许开发者在Delphi环境下轻松地操作图像、绘制矢量图形、添加文本等等。 在Delphi GDIPlus中,开发者可以使用各种类和方法来实现图形处理的需求。例如,开发者可以使用Graphics类来创建一个图形对象,并使用该对象进行各种图形操作,如绘制直线、矩形、椭圆等。同时,Delphi GDIPlus还提供了丰富的画刷和笔刷类,开发者可以通过设置不同的画刷和笔刷效果来实现更加丰富多样的绘图效果。 在最新版本Delphi GDIPlus中,还增加了对透明处理、图像旋转、图像缩放等功能的支持。开发者可以通过使用GDIPlus提供的方法来实现这些功能,实现更加灵活和复杂的图形处理。 总而言之,Delphi GDIPlus最新版本是一个强大且易于使用的图形处理库,为Delphi开发者提供了丰富多样的图形操作功能。无论是简单的图形绘制还是复杂的图形处理,开发者都可以通过Delphi GDIPlus轻松地实现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值