Einzelnen Beitrag anzeigen

CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: D7-Komponenten nach D2005 portieren

  Alt 7. Jan 2005, 20:43
Hi Robert,
Zitat von Robert_G:
Zitat von Chakotay1308:
Dupliziert die Packages für D7 einfach im Explorer (markieren, STRG+C, STRG+V) und benennt die Dateien um. Am sinnvollsten ist, in der bisherigen Form der Bennung weiterzumachen. Also aus VirtualTreesD7D.dpk sollte VirtualTreesD9D.dpk gemacht werden. Achtet darauf, dass ihr das sowohl bei Design- als auch bei den Runtime-Packages macht.
Das ist IMHO nicht notwendig. Man sollte Code möglichst wiederverwenden. NICHT kopieren.
Ich sprach ja auch davon nur die Packages zu duplizieren und die Sourcen an sich zu behalten. Oder habe ich jetzt was falsch verstanden? Die Sourcen werden ja an sich wiederverwendet.
Zitat von Robert_G:
Delphi8 & 2005 legen in deinen "Eigenen Dateien" den Ordner "BDS Projects" o.ä. an. Darin kannst du ja einen Ordner Library packen.
Dem spendierst du die Unterordner DCU & Output. In den Optionen setzt du jetzt die DCU- & Outputpfade standardmäßig auf diese Ordner.
Ich habe unter Library ein D7, D8 und D2005 stehen. Darunter erst die DCUs und den Output.
Schon kommen sich Units,Packages,Echsen,... , die von verschiedenen Delphi-Versionen kompiliert wurden, nicht mehr in die Quere. Außerdem musst du nur die 2 Ordner als Suchpfad global definieren. Das spart das nervige Anpassen der Suchpfade
Hm. Das sei jedem selber überlassen. Ich habe den Ordner mit den Komponenten, so wie ich sie heruntergeladen und entpackt habe und meine BPLs liegen dort, wo Delphi das standardmäßig hinpackt. Ich habe generell andere Dinge zu tun, als mich mit installierten Komponenten zu beschäftigen.

Zitat von Robert_G:
Zitat von Chakotay1308:
In Designpackages muss u.U. noch bei den requires-Angaben eine Zahl ausgetauscht werden. Das gleiche wieder u.U. bei Runtimepackages machen.
Im Normalfall reicht es die Einträge von Delphi-System-Packages á la vclXX,rtlXX & Co zu entfernen. (Die landen dort im kompilierten Package sowieso, falls VCL,... verwendet werden).
Werden andere Packages benötigt muss man sie auch fit für mehrere Dephi-Versionen machen.
Okay, das ist auch eine Möglichkeit. Aber wenn man nur auf die Schnelle sein Projekt 2005-Fertig machen will, dann reicht das ja.

Zitat von Robert_G:
Zitat von Chakotay1308:
Dann sollte alles fertig sein. Alles speichern und ganz normal Kompilieren und Installieren, wie bei D7 und anderen D9-Paketen auch.
Genau deshalb. Compiler-spezifische Dinge (zum Bleistift ein Enumerator in einer Collection, oder die DesignTime-Editoren in D<6) können bedingt kompiliert werden.
Ansonsten läuft der gleiche Code überall.
Ich habe ja auch bewusst geschrieben, dass ich davon ausgehe, dass die Komponente unter Delphi 7 funktioniert hat, um nicht erst noch die Anpassung zu beschrieben, die gemacht werden muss damit die DesignTime-Editoren funktionieren.

Zitat von Robert_G:
Zitat von Chakotay1308:
Delphi legt noch ziemlich viel Müll ab, deswegen könnt ihr (hat bei mir bisher zu keinen Fehlern geführt) diese Dateien löschen: *.bdsproj.local, *.cfg und das Verzeichnis ModelSupport, sofern ihr keine Modellansichten braucht.
*.local bedeutet, dass im Anwendungsverzeichnis zuerst nach typbibliotheken gesucht werden soll. Das ist also nicht immer Müll. Die *.cfg enthaltren deine Projekteinstellungen -> auch kein Müll.
Im Normalfall braucht man beides nicht. Außer vielleicht die *.cfg-Datei. Korrigier mich wenn ich falsch liege, aber die beiden Dateien würde ich eher bei normalen Projekten benötigen.

Zitat von Robert_G:
Zitat von Chakotay1308:
Ich hoffe, dass ich jetzt nicht schon wieder irgendwelche Fehler gemacht habe und das bei euch funktioniert. Bisher habe ich das bei folgenden Komponenten geschafft: VirtualTrees (aka VST), Aducom SQLite, ...
Sicher funktioniert dein Weg, aber du hast jetzt doppelten Code, das macht Änderungen/Aktualisierungen nervig.
s.o.

Chris
  Mit Zitat antworten Zitat