Установка нескольких версий библиотеки в Delphi / C ++ Builder - PullRequest
3 голосов
/ 15 июня 2009

Как я могу установить несколько версий библиотеки в Delphi или C ++ Builder? Например, я мог бы захотеть разработать следующую версию нашего приложения, используя текущие версии JCL и JVCL, и в то же время иметь возможность компилировать выпускную версию нашего приложения, используя любую версию JCL и JVCL, протестированную для этого выпуска.

Использование более чем одной версии библиотеки легко с такими библиотеками, как Boost, поскольку это всего лишь заголовочные файлы и файлы библиотек / DLL, которые я могу поместить в любое место, и поэтому я могу просто указать свои файлы проекта на соответствующую библиотеку. каталоги. Однако, поскольку библиотеки, такие как JCL и JVCL, пытаются установить себя в IDE, я не уверен, как настроить разные проекты для использования разных версий, не превращая их в неуправляемый хак.

(я до сих пор не совсем знаком с тем, как Delphi управляет компонентами и проектами - большая часть моего опыта связана с C ++ - поэтому это может быть частью моей проблемы.)

1 Ответ

6 голосов
/ 16 июня 2009

У нас была та же проблема, поддержка старых версий, скомпилированных с различными версиями компонентов. Нашим решением было / является использование параметра командной строки "-r" в среде IDE. С помощью этого переключателя можно использовать разные пути к библиотекам и пакеты (одновременно). Единственная проблема, с которой мы столкнулись при таком подходе, заключалась в том, что некоторые из нас регулярно пытались открыть более старую версию проекта в неправильном экземпляре IDE.

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

Как настроить те:

  1. Запустите вашу IDE, как вы привыкли к ней.
  2. Установите все необходимое для «версии 1.0»
  3. Закрыть IDE
  4. Установить все (старые) пакеты (JCL / JVCL /...)
  5. Запустить regedit.exe
  6. Экспорт раздела реестра HKCU \ Software \ CodeGear \ BDS \ 5.0 в * .reg файл
  7. Запустите nodepad.exe, выполните поиск и замену в файле * .reg для «CodeGear \ BDS \ 5.0» и замените его на «CodeGear \ Version1.0 \ 5.0»
  8. Импорт файла * .reg (дважды щелкнув его в проводнике Windows)
  9. Создайте копию ссылки на стартовое меню RAD Studio 2007 и измените командную строку, указав ключ "-rVersion1.0".

Теперь у вас есть две одинаковые конфигурации IDE. Теперь вы можете изменить среду IDE, в которой не используется параметр команды "-r", на пакеты вашей версии транка. При установке всех пакетов вы не должны использовать каталоги BPL и DCP по умолчанию, если в разных версиях пакетов не используются разные имена файлов (как это делают JCL и 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
...