IFDEF Borland compiler

How to determine which Borland product is compiling your component.

Here is a brief explanation of what each of the defines mean

  • DFS_WIN16: Compilation target is 16-bit Windows
  • DFS_WIN32: Compilation target is 32-bit Windows
  • DFS_USEDEFSHLOBJ: The SHLOBJ.PAS version contains no none errors.

    Delphi 2.0x and C++Builder 1.0x shipped with a version of SHLOBJ.PAS that had many nasty errors. See my web site in the Hints section for how to fix
  • DFS_NO_COM_CLEANUP: The version of the compiler being used does not require COM objects to be released; it is done automatically when they go "out of scope".
  • DFS_NO_DSGNINTF: Delphi 6 pretty much kills off the DsgnIntf unit for good. Split into a couple of new units.
  • DFS_DESIGNERSELECTIONS: IDesignerSelections replaced TDesignerSelectionList
  • DFS_IPROPERTY: IProperty introduced for design-time stuff.
  • DFS_COMPILER_1: Delphi 1.0 is the compiler. Note that C++B 1.0 does NOT cause this to be defined. It is really the 2.0 compiler.
  • DFS_COMPILER_1_UP: Delphi 1.0x or higher, or C++B 1.0x or higher is the compiler.
  • DFS_COMPILER_2: Delphi 2.0x or C++B 1.0x is the compiler.
  • DFS_COMPILER_2_UP: Delphi 2.0x or higher, or C++B 1.0x or higher is the compiler.
  • DFS_COMPILER_3: Delphi 3.0x or C++B 3.0x is the compiler.
  • DFS_COMPILER_3_UP: Delphi 3.0x or higher, or C++B 3.0x or higher is the compiler.
  • DFS_COMPILER_4: Delphi 4.0x or C++B 4.0x is the compiler.
  • DFS_COMPILER_4_UP: Delphi 4.0x or higher, or C++B 4.0x or higher is the compiler.
  • DFS_COMPILER_5: Delphi 5.0x or C++B 5.0x is the compiler.
  • DFS_COMPILER_5_UP: Delphi 5.0x or higher, or C++B 5.0x or higher is the compiler.
  • DFS_COMPILER_6: Delphi 6.0x or C++B 6.0x is the compiler.
  • DFS_COMPILER_6_UP: Delphi 6.0x or higher, or C++B 6.0x or higher is the compiler.
  • DFS_UNKNOWN_COMPILER: No sense could be made of the compiliation environment.
  • DFS_CPPB: Any version of C++B is being used.
  • DFS_CPPB_1: C++B v1.0x is being used.
  • DFS_CPPB_3: C++B v3.0x is being used.
  • DFS_CPPB_3_UP: C++B v3.0x or higher is being used.
  • DFS_CPPB_4: C++B v4.0x is being used.
  • DFS_CPPB_4_UP: C++B v4.0x or higher is being used.
  • DFS_CPPB_5: C++B v5.0x is being used.
  • DFS_CPPB_5_UP: C++B v5.0x or higher is being used.
  • DFS_DELPHI: Any version of Delphi is being used.
  • DFS_DELPHI_1: Delphi v1.0x is being used.
  • DFS_DELPHI_2: Delphi v2.0x is being used.
  • DFS_DELPHI_2_UP: Delphi v2.0x or higher is being used.
  • DFS_DELPHI_3: Delphi v3.0x is being used.
  • DFS_DELPHI_3_UP: Delphi v3.0x or higher is being used.
  • DFS_DELPHI_4: Delphi v4.0x is being used.
  • DFS_DELPHI_4_UP: Delphi v4.0x or higher is being used.
  • DFS_DELPHI_5: Delphi v5.0x is being used.
  • DFS_DELPHI_5_UP: Delphi v5.0x or higher is being used.
  • DFS_DELPHI_6: Delphi v6.0x is being used.
  • DFS_DELPHI_6_UP: Delphi v6.0x or higher is being used.

    The file dfs.inc contains the code you need.


    Share this article!

    Follow us!

    Find more helpful articles: