Ja, zum Beispiel indem man die
VCL Version eines Projektes unabhängig von der
IDE Version machen würde. Dazu bräuchte die
IDE nur die älteren
VCL Libraries (Packages) zu enthalten.
Und wie sollte dann eine D7 dann die Sprach-Extensions aus der Erweiterten
RTTI verstehen? oder den
Unicode-String-Typ? Oder NativeInt (ok, das wäre das einfachste)?
Die
VCL ist wie bei MS die MFC oder bei Java die entsprechenden Versionen. In eine Richtung (Neu
IDE versteht alte Frameworkversionen), aber umgekehrt geht das auch dort nicht. Ein .NET-Programm das reichlich von den neuen .NET 4.0-Möglichkeiten nutzen zieht wird man nicht unter VS.NET 2002 zum laufen bekommen.
Und in der Projektdatei wird dann hinterlegt, dass das Projekt die Delphi 2010/XE/XE2 oder XE3
VCL benutzt.
Wie gesagt. Wird schon allein an den neuen Sprachfeaturen scheitern. Und sowas selbst nur in den Möglichkeiten wie VS.NET oder Intellij IDEA zu realisieren kostet schon einige Mannjahre die mann dann nicht mehr für neue Features zur verfügung hat.
Dann könnte man in der neuen
IDE das alte Projekt öffnen, und vor dem Speichern die
VCL Version umstellen (was im Idealfall dann eine Prüfung durch den Compiler auslösen würde). Oder mit der alten
VCL noch solange in der neuen
IDE arbeiten bis man alles für den Wechsel klar hat (Drittanbieterkomponenten).
Die vorgehensweise ist so:
1, Neue Version von 3th-Party-Komponenten in alter
IDE-Version installieren und dort erst Lauffähigkeit wieder herstellen/Testen
2, Entsprechend eigene Inc-Dateien oder Basiskomponenten soweit anpassen das sie auch mit neuen Delphi-Versionen lauffähig sind (Stichwort
Unicode/NativeInt/...)
3, und zum Schluss dann die Projekte umstellen. Hierbei bis zur vollständigen lauffähigkeit immer noch alles Forms mit alten Delphi-Versione editieren damit kein neuen Properties in die
DFM-Datei aufgenommen werden.
Aber das alles geht nicht so einfach (allein schon weil sich das
DCU Format von Version zu Version ändert).
Was in Delphi das
DCU-Format ist, ist z.B. in .NET die Abhänigkeit gegenüber der Frameworkversion. Hatte gerade erst denn Fall das eine mit integriert Komponente nur mit .NET 2.0 (bzw. 3.5) lauffähig war aber es mittlerweilen PC's gibt die nur .NET 4.0 installiert haben.
Windows Vista - Eine neue Erfahrung in Fehlern.