AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Cross-Platform-Entwicklung Delphi Bedingte Compilierung mit IFDEF
Thema durchsuchen
Ansicht
Themen-Optionen

Bedingte Compilierung mit IFDEF

Ein Thema von Darlo · begonnen am 17. Jun 2015 · letzter Beitrag vom 17. Jun 2015
Antwort Antwort
Darlo

Registriert seit: 28. Jul 2008
Ort: München
1.196 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#1

Bedingte Compilierung mit IFDEF

  Alt 17. Jun 2015, 15:31
Hallo zusammen,

ich baue gerade ein Projekt neu auf da es auch neben Windows, iOS und OS X jetzt auch auf Android laufen soll.

Jetzt arbeite ich mit
Delphi-Quellcode:
{$IFDEF MSWINDOWS} {$ENDIF}
{$IFDEF IOS} {$ENDIF}
{$IFDEF MACOS} {$ENDIF}
und habe gemerkt und nachgelesen das das IFDEF MACOS für OS X und iOS gilt.
Muss ich wirklich verschachteln oder gibt es ein IFDEF OSX?
Delphi-Quellcode:
{$IFDEF MACOS}
  {$IFNDEF IOS}
    Showmessage('OS X'};
  {$ENDIF nIOS}
  {$IFDEF IOS}
    Showmessage('iOS'};
  {$ENDIF IOS}
{$ENDIF MACOS}
Philip
  Mit Zitat antworten Zitat
Rollo62
Online

Registriert seit: 15. Mär 2007
4.095 Beiträge
 
Delphi 12 Athens
 
#2

AW: Bedingte Compilierung mit IFDEF

  Alt 17. Jun 2015, 15:44
Ich verschachterle nichts.

Wenn nötig schreibe ich
Code:
{$IF DEFINED(IOS) or DEFINED(ANDROID)}
Rollo
  Mit Zitat antworten Zitat
RoadR69

Registriert seit: 7. Nov 2013
17 Beiträge
 
Delphi 10 Seattle Professional
 
#3

AW: Bedingte Compilierung mit IFDEF

  Alt 17. Jun 2015, 15:47
IFDEF MACOS: Target platform is Mac OS X.

Quelle: http://docwiki.embarcadero.com/RADSt...n_%28Delphi%29

Plattform ist also eindeutig, oder?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#4

AW: Bedingte Compilierung mit IFDEF

  Alt 17. Jun 2015, 15:53
Plattform ist also eindeutig, oder?
Ja?

Hier nochmal in "kurz" (nur das Wichtigste)
http://geheimniswelten.de/sonstiges/...piler/#Defines
Und unten dran auch ein paar fertige IFs.

Achtung: XE8 ist noch nicht enthalten ... dort wurde ja iOS64 eingeführt,
aber in der OH wurde es natürlich noch nicht aktualisiert.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (17. Jun 2015 um 15:58 Uhr)
  Mit Zitat antworten Zitat
Photoner

Registriert seit: 6. Dez 2012
Ort: Nürnberg
103 Beiträge
 
Delphi 10.1 Berlin Starter
 
#5

AW: Bedingte Compilierung mit IFDEF

  Alt 17. Jun 2015, 16:44
Was mache ich in folgendem Beispiel falsch?

Delphi-Quellcode:
  {$IF CompilerVersion <=19.0}
  FMX.Messages,
  {$ELSE}
  System.Messaging,
  {$ENDIF}
Benutze XE5. Da gibt es noch keine System.Messaging.


Ok... dummer Fehler:
Falsche Liste gelesen.
So gehts richtig:

Delphi-Quellcode:
  {$IF CompilerVersion <=26.0}
  FMX.Messages,
  {$ELSE}
  System.Messaging,
  {$ENDIF}
Chris

Geändert von Photoner (17. Jun 2015 um 16:47 Uhr) Grund: selber drauf gekommen
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#6

AW: Bedingte Compilierung mit IFDEF

  Alt 17. Jun 2015, 16:52
19 = CodeGear Delphi 2007 for .NET

Sieh nochmal in meine letztlich verlinkte Seite und da in der ersten Tabelle genau auf die Überschriften achten.

[edit] jupp
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#7

AW: Bedingte Compilierung mit IFDEF

  Alt 17. Jun 2015, 17:08
PS: CompilerVersion als Konstante einfach in eine Methode reinschreiben/benutzen und die Maus drüber halten, falls man mal seine Version nicht kennt.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Darlo

Registriert seit: 28. Jul 2008
Ort: München
1.196 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#8

AW: Bedingte Compilierung mit IFDEF

  Alt 17. Jun 2015, 19:56
IFDEF MACOS: Target platform is Mac OS X.

Quelle: http://docwiki.embarcadero.com/RADSt...n_%28Delphi%29

Plattform ist also eindeutig, oder?

Schau Dir das mal genau an:
MACOS
DCCOSX defined (ok)
DCCIOSARM defined (ist iOS!)
DCCIOS32 defined (ist iOS Simulator)
Philip
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz