2009-06-15 13 views
3

Wie kann ich mehrere Versionen einer Bibliothek in Delphi oder C++ Builder installieren? Zum Beispiel möchte ich möglicherweise die nächste Version unserer App mit den aktuellen Versionen von JCL und JVCL entwickeln können, während wir immer noch in der Lage sein werden, die Release-Version unserer App zu kompilieren, egal welche Version von JCL und JVCL für diese Version getestet wurde.Installieren mehrerer Bibliotheksversionen in Delphi/C++ Builder

Die Verwendung von mehr als einer Version einer Bibliothek ist einfach mit Bibliotheken wie Boost, da das sind nur Header-Dateien und Bibliothek/DLL-Dateien, die ich setzen kann, wo immer ich will, und so kann ich meine Projektdateien auf die entsprechende verweisen Bibliotheksverzeichnisse. Da Bibliotheken wie JCL und JVCL versuchen, sich selbst in der IDE zu installieren, bin ich mir jedoch nicht sicher, wie ich verschiedene Projekte so konfigurieren kann, dass sie verschiedene Versionen verwenden, ohne dass es zu einem unkontrollierbaren Hack wird.

(Ich bin immer noch nicht ganz vertraut mit, wie Delphi-Komponenten und Projekte verwaltet - die meisten meiner Erfahrung ist in C++ - so kann dieser Teil meines Problems sein.)

Antwort

6

Wir hatten das gleiche Problem, Unterstützung älterer Versionen mit verschiedenen Versionen der Komponenten kompiliert. Unsere Lösung war/ist die Verwendung der Befehlszeilenoption "-r" der IDE. Mit diesem Schalter ist es möglich, verschiedene Bibliothekswege und Pakete gleichzeitig zu verwenden. Das einzige Problem, auf das wir bei diesem Ansatz stießen, war, dass einige von uns regelmäßig versuchten, eine ältere Projektversion in der falschen IDE-Instanz zu öffnen.

[Old version 1.0] bds.exe -rVersion1.0 
[trunk version ] bds.exe 

, wie diese Konfiguration siehe:

  1. Ihre IDE starten, wie Sie es gewohnt sind.
  2. alles Installieren Sie für "Version 1.0" benötigen
  3. Schließen Sie die IDE
  4. Installieren Sie alle (alten) Pakete (JCL/JVCL/...)
  5. starten
  6. Export den Registrierungsschlüssel regedit.exe HKCU \ Software \ CodeGear \ BDS \ 5.0 zu einer * .reg-Datei
  7. Starten Sie nodepad.exe und führen Sie eine Suche & Ersetzen Sie in der * .reg-Datei für "CodeGear \ BDS \ 5.0" und ersetzen Sie es durch "CodeGear \ Version1 .0 \ 5.0 "
  8. Importieren Sie die * .reg-Datei (durch Doppelklicken in Windows Explorer)
  9. Erstellen Sie eine Kopie Ihres RAD Studio 2007-Startmenü-Links, und ändern Sie die Befehlszeile mit dem Schlüssel "-rVersion1.0".

Jetzt haben Sie zwei IDE-Konfigurationen, die gleich sind. Sie können nun die IDE, die die Befehlsoption "-r" nicht verwendet, in die Pakete Ihrer Hauptversion ändern. Wenn Sie alle Pakete installieren, dürfen Sie die Standard-BPL- und DCP-Verzeichnisse nicht verwenden, es sei denn, die verschiedenen Paketversionen verwenden unterschiedliche Dateinamen (wie JCL und JVCL).

CodeGear\BDS\5.0 = Delphi 2007 
CodeGear\BDS\6.0 = Delphi 2009 
Borland\BDS\4.0 = Delphi 2006 
Borland\Delphi\7.0 = Delphi 7 
+0

Sie möchten vielleicht auch C kopieren: \ Benutzer \% username% \ AppData \ Roaming \ Borland \ BDS \ 5.0 in C: \ Users \% username% \ AppData \ Roaming \ Borland \ Version1.0 \ 5.0, um alle IDE-Einstellungen wie Layouts, Favoriten usw. zu kopieren (dieser Pfad ist für Delphi 2007, 2009 ist C: \ Users \% UserName% \ AppData \ Roaming \ CodeGear \ BDS \ 6.0 und ich glaube 2006 ist C : \ Benutzer \% UserName% \ AppData \ Local \ Borland \ BDS \ 4.0) – jasonpenny

+0

Jeremy North hat auch ein interessantes Tool namens Delphi Configuration Manager, das bei diesem Problem helfen könnte (http://www.jed-software.com/dcm) .htm) - David Taylor –

Verwandte Themen