Inc-Datei nur nutzen, wenn da
Hallo,
ich möchte in 5 Quellcode-Dateien bestimmte Code-Teile nur in 2 bestimmten Projekten nutzen. Das geht ja mit den Direktiven {$IFDEF TEST}...{$ENDIF} Nun sind diese 5 Quellcode-Dateien aber auch Teil von vielen anderen Projekten (> 40), die wir erstellt haben. Wenn ich nun eine Inc-Datei in die 5 Quellcode-Dateien mit {$I MeineDatei.inc} einbinde und diese Datei nur in die Ordner der zwei betroffenen Projekte lege, würde in allen 40 anderen Projekten das Fehlen der Inc-Datei bemängelt werden. Ich möchte die Inc-Datei nicht in alle vorhandenen und zukünftigen Projekte legen. Gibt es eine andere Möglichkeit? |
AW: Inc-Datei nur nutzen, wenn da
Leg doch einfach eine leere Inc-Datei zu den Projekten die diese nicht brauchen.
|
AW: Inc-Datei nur nutzen, wenn da
Kannst du das Include der INC Datei nicht auf mit einem
Delphi-Quellcode:
Kapseln und dann in den zwei Projekten, in denen du die INC Datei nutzen willst, diese als Compiler Schalter setzen?
{$IFDEF}
|
AW: Inc-Datei nur nutzen, wenn da
Zitat:
|
AW: Inc-Datei nur nutzen, wenn da
Zitat:
|
AW: Inc-Datei nur nutzen, wenn da
Man könnte hier ein leeres INC erstellen, was später im Suchpfad gefunden wird, also die eventuell eigentlich vorhande INC.
Aber einmal die Suchpfade beim Bearbeiten vertauscht und schon war's das. Alternativ eine zweite INC, welche steuert was sonst noch eingebunden wird. (DEFINE oder direkt INCLUDE drin) Leider gibt es keine automatischen Möglichenkeiten (mit {$IF auf Dateisystem/Compilercache), um zu Prüfen ob INC/PAS vorhanden ist. Ebenso nicht ein "binde in meine Unit ein, wenn diese Unit irgendwo im Programm verwendet wird", um dann z.B. abweichenden Code für FMX und VCL in einer Basiskomponente nutzen zu können. Ja, es gibt z.B. Default-Namespaces ala Vcl. oder FMX. , ABER nichtmal in neu angelegten Geräteübergreifenden Anwendungen ist FMX vorhanden. Und dann gibt es ein Problem, wie man es machen soll, wenn keiner der Namespaces verfügbar ist. FMX.meineunit.pas und VCL.meineunit.pas aber meineunit.pas, als Fallback, ist nicht zuverlässig verwendbar. Auch gibt es kein "mache INCLUDE nicht", wenn zugehörige Klasse/Funktion nicht verwendet wurde. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:39 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