AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi vcl40, vcl: Unterscheidung per Compilerschalter möglich?

vcl40, vcl: Unterscheidung per Compilerschalter möglich?

Ein Thema von Nogge · begonnen am 27. Mai 2008 · letzter Beitrag vom 6. Sep 2008
Antwort Antwort
Nogge

Registriert seit: 15. Jul 2004
336 Beiträge
 
Delphi 7 Professional
 
#1

vcl40, vcl: Unterscheidung per Compilerschalter möglich?

  Alt 27. Mai 2008, 22:38
Hallo Community,
ich habe gerade ein altes Package geschrieben in Delphi 4 gefunden und habe es übersetzt. Allerdings will ich ungern für jede Delphiversion eine neue dpr-Datei erstellen, sondern vielmehr per Compilerschalter in der Art {$IFDEF D5UP ...} (mit JEDI.inc) unterscheiden. Allerdings funktionierte dies nicht in der requires-Klausel. Kann mir jmd sagen, ob dies überhaupt möglich ist und wenn ja, wie?

THX Nogge
  Mit Zitat antworten Zitat
mashutu

Registriert seit: 15. Nov 2007
195 Beiträge
 
#2

Re: vcl40, vcl: Unterscheidung per Compilerschalter möglich?

  Alt 27. Mai 2008, 22:57
Zitat von Nogge:
Hallo Community,
ich habe gerade ein altes Package geschrieben in Delphi 4 gefunden und habe es übersetzt. Allerdings will ich ungern für jede Delphiversion eine neue dpr-Datei erstellen, sondern vielmehr per Compilerschalter in der Art {$IFDEF D5UP ...} (mit JEDI.inc) unterscheiden. Allerdings funktionierte dies nicht in der requires-Klausel. Kann mir jmd sagen, ob dies überhaupt möglich ist und wenn ja, wie?

THX Nogge
Mir ist jetzt nicht gnz klar, worauf Du hinaus willst, aber ich habe fuer unterschiedliche Versionen des Compilers immer folgende Statements benutzt:
===========cut---------------
{$ifdef Ver180}
{$DEFINE D2006}
{$Endif}
===========cut---------------
Delphi 2006 hatte also die Version 180. Die Versionen sind 'durchgezaehlt', seit "Turbopascal 1" - allerdings multipliziert mit 10.
Ver55
war TP 5.5 und TP fuer Windows war Ver80 Danach folgten die Delphi-Versionen wobei ich nicht mit allen gearbeitet habe und auf die schnelle keine komplette Darstellung liefern kann. Das meiste erfolgte in Zehnerschritten und sollte sich leicht herausfinden lassen, wenn man die fraglichen Compilerversionen zur Hand hat.
utu

if it was hard to write it should be hard to read
  Mit Zitat antworten Zitat
Nogge

Registriert seit: 15. Jul 2004
336 Beiträge
 
Delphi 7 Professional
 
#3

Re: vcl40, vcl: Unterscheidung per Compilerschalter möglich?

  Alt 28. Mai 2008, 06:48
Delphi-Quellcode:
package myPackage_D4;
[...]
{$ALIGN ON}
[...]
requires
  vcl40;

+

package myPackage_D7;
[...]
{$ALIGN 8}
[...]
requires
  vcl;

=

package myPackage;
[...]
{$IFDEF DELPHI5_UP}
  {$ALIGN 8}
{$ELSE}
  {$ALIGN ON}
{$ENDIF}
[...]
requires
{$IFDEF DELPHI5_UP}
  vcl;
{$ELSE}
  vcl40;
{$ENDIF}
Das untere will ich erreichen, was bisher aber immer fehlschlug. Anscheinend darf man keine Compilerschalter innerhalb der requires-Klausel benutzen. Stimmt das wirklich oder mache ich etwas falsch?
  Mit Zitat antworten Zitat
Nogge

Registriert seit: 15. Jul 2004
336 Beiträge
 
Delphi 7 Professional
 
#4

Re: vcl40, vcl: Unterscheidung per Compilerschalter möglich?

  Alt 6. Sep 2008, 15:29
*push*
  Mit Zitat antworten Zitat
jbg

Registriert seit: 12. Jun 2002
3.475 Beiträge
 
Delphi 10.1 Berlin Professional
 
#5

Re: vcl40, vcl: Unterscheidung per Compilerschalter möglich?

  Alt 6. Sep 2008, 15:53
Zitat von Nogge:
Anscheinend darf man keine Compilerschalter innerhalb der requires-Klausel benutzen.
Der Compiler hat damit kein Problem. Die IDE aber schon. Denn sie generiert die .dpk (und auch .dpr) Datei ständig neu. Und dabei gehen die IFDEFs nicht nur verloren, sondern deren Inhalt wird je nach Delphi Version sogar entfernt.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
16.900 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: vcl40, vcl: Unterscheidung per Compilerschalter möglich?

  Alt 6. Sep 2008, 17:58
Jeder Komponentenhersteller liefert für jede IDE passende DPK-Dateien. Also solltest du das auch so machen das es höchstwahrscheinlich nicht anders geht.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Nogge

Registriert seit: 15. Jul 2004
336 Beiträge
 
Delphi 7 Professional
 
#7

Re: vcl40, vcl: Unterscheidung per Compilerschalter möglich?

  Alt 6. Sep 2008, 19:59
Mh ok. Danke für die Erklärung.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 +2. Es ist jetzt 15:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf