![]() |
EMB DCE 12 - CompilerVersion per Makro ermitteln - HowTo ?
Hallo,
wie kann ich der Delphi CompilerVersion per Makro ermitteln ? Ich habe dazu den folgenden Code:
Delphi-Quellcode:
Alle beide Conditionals werden grau dargestellt.
{$ifdef fpc}
{$mode delphi}{$H+} {$endif} {$ifdef CompilerVersion >= 320} {$M+} aaaaa {$endif} 320 müsste doch der Tokyo Version entsprechen ? |
AW: EMB DCE 12 - CompilerVersion per Makro ermitteln - HowTo ?
![]() Abschnitt "Using Conditional Defines for the Compiler Version" |
AW: EMB DCE 12 - CompilerVersion per Makro ermitteln - HowTo ?
Wobei die CompilerVersion für Tokyo 32.0 wäre (siehe
![]() |
AW: EMB DCE 12 - CompilerVersion per Makro ermitteln - HowTo ?
Einfach den Städtenamen löschen und [Enter]
schon ist man beim Aktuellen. Oder links im Menü. |
AW: EMB DCE 12 - CompilerVersion per Makro ermitteln - HowTo ?
Delphi-Quellcode:
dieser PreProcessor Conditional greift nicht.
{$ifdef CompilerVersion >= 17.0}
{$M+} aaaaa {$endif} In Zeile: 3 bekomme ich keinen Fehler vom Compiler - ist immernoch grau. |
AW: EMB DCE 12 - CompilerVersion per Makro ermitteln - HowTo ?
Da steht ja auch nicht "ifdef compilerversion", sondern nur "if compilerversion".
|
AW: EMB DCE 12 - CompilerVersion per Makro ermitteln - HowTo ?
Irgendwer kam auch mal auf die saublöde Idee $EndIf und $IfEnd gleichzusetzen.
![]() per se ist es so
Delphi-Quellcode:
{$IfDef} {$EndIf}
Delphi-Quellcode:
{$If} .. {$IfEnd}
PS: $IFDEF beachtet nur die erste Angabe und ignoriert den Rest Drum geht auch sowas
Delphi-Quellcode:
{$IFDEF VER220 DelphiXE} {$ENDIF}
und bei dir meckert es deswegen auch nicht, wegen der "vermeintlich" falschen Syntax. PPS:
Delphi-Quellcode:
=
{$IFDEF FPC}
Delphi-Quellcode:
{$IF Defined(FPC)}
Delphi-Quellcode:
{$IF not Defined(FPC) and Declared(Bezeichner) or BooleanKonstante or (IntegerKonstante <> 123)}
Bezeichner = TEineCooleKlasse, ein Typ, Variable, Konstante, Funktionsname oder sonstwas |
AW: EMB DCE 12 - CompilerVersion per Makro ermitteln - HowTo ?
okay, Danke.
klappt...
Delphi-Quellcode:
aber der Block mit CompilerVersion wird stets grau dargestellt.
{$ifdef fpc}
{$mode delphi}{$H+} {$endif} {$ifdef CONDITIONALEXPRESSIONS} {$if CompilerVersion >= 18.0} {$M+} aaaa {$endif} {$endif} Der Compiler hingegen macht seine Arbeit. Hat das was mit Hintergrund-Compilierung zu tun ? |
AW: EMB DCE 12 - CompilerVersion per Makro ermitteln - HowTo ?
Im Delphi 11 (und bestimmt auch in der 12)
ist nur das
Delphi-Quellcode:
ausgegraut
{$mode delphi}{$H+}
und natürlich das aaa als Fehler markiert. Zitat:
|
AW: EMB DCE 12 - CompilerVersion per Makro ermitteln - HowTo ?
Unter welchen Versionen soll das denn laufen können? Frage nur weil es neuerdings (12) eine abfragbare Laufzeitvariable gibt:
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz