Совместное использование проекта между двумя версиями

Delphi - отличная среда разработки и компилятор. Но иногда у него также есть несколько мелких недостатков. Как и моя проблема прямо сейчас ...
Я работаю над проектом, созданным в Delphi 2007. Но мне нравится использовать Delphi XE просто потому, что в IDE есть некоторые интересные функции, и она более стабильна на моем компьютере. Итак, я открыл проект в Delphi XE и менял код с учетом обратной совместимости.
Когда я снова сохраняю проект, чтобы открыть его в D2007, у него возникают проблемы с чтением проекта. Файл dproj XE несовместим с 2007 годом. Чтобы снова открыть проект в D2007, мне нужно удалить файл dproj и открыть файл dpr. (Или мне нужно сохранить старый файл proj 2007 года и вернуть его снова, когда я снова захочу использовать D2007.)

Это раздражает. Кто-нибудь знает лучшее решение, чтобы сохранить правильный файл dproj для каждой версии?


person Wim ten Brink    schedule 19.10.2010    source источник
comment
И вы, наверное, удивитесь: я использую D2007 на работе, а D-XE дома. Когда я работаю дома на своего работодателя, я также могу использовать D2007 дома, но IDE часто дает сбои. D-XE для меня надежнее.   -  person Wim ten Brink    schedule 19.10.2010
comment
Помимо того, что пишет Скамрадт, будьте готовы к сюрпризам, когда Delphi XE начнет сохранять ваши файлы в Unicode, а Delphi 2007 не сможет их прочитать. Это помимо новых компонентов и свойств, которые были введены в Delphi 2009 и новее (да, вы можете попытаться игнорировать эти новые свойства в Delphi 2007, но вам нужно внимательно проверить, не теряете ли вы из-за этого какую-либо информацию).   -  person Jeroen Wiert Pluimers    schedule 19.10.2010
comment
К счастью, в этом проекте я не использую никаких форм или компонентов. Я работаю над невизуальными фоновыми задачами и классами. Когда он работает, его можно интегрировать в приложение форм D2007, но пока это простое консольное приложение. Я склонен создавать множество классов и проектов таким образом, поскольку другие члены команды делают за меня часть графического интерфейса пользователя. :-)   -  person Wim ten Brink    schedule 19.10.2010


Ответы (3)


Вы можете иметь свой проект в системе контроля версий, например Subversion. Если вы опустите файлы .dproj из системы контроля версий, обычно вполне можно работать в разных версиях Delphi.

person Jan Oosting    schedule 19.10.2010
comment
Мне нравится это решение. :-) Но я думаю, что сделаю это немного иначе, не проверяя измененный файл dproj. (Тем не менее, нужно проверить dpr.) - person Wim ten Brink; 19.10.2010
comment
Вместо этого отметьте их и откройте ветку. При необходимости их можно объединить. - person ; 19.10.2010

Вы могли бы разместить файлы DPR и DPROJ в разных каталогах. К сожалению, вам придется объединить любые изменения, внесенные в одну версию, в другую, но это довольно просто, используя Beyond compare:

BCompare.exe .\d2007\project.dpr .\dXE\project.dpr

person skamradt    schedule 19.10.2010

В этом случае я использую один файл .dpr и несколько файлов .dproj.

Основные шаги: - Создать проект в D2007. - Закрыть проект. - Скопируйте project.dproj в project.xe.dproj. - Откройте project.xe.dproj в XE. - Позвольте ему обновить проект, сохранить его и перезаписать старый project.xe.dproj. - Удалите резервную копию project.xe.dproj, созданную при обновлении.

Теперь у вас есть project.dproj для использования в D2007 и project.xe.dproj для использования в XE. Оба используют одну и ту же кодовую базу - project.dpr.

person gabr    schedule 19.10.2010
comment
Это будет работать до тех пор, пока вы не измените настройки проекта и не добавите в него какие-либо блоки / формы. Особенно в последнем случае вы получите некоторые интересные эффекты из-за того, что формы перечислены в файле .dpr, но не в файле .dproj, когда вы переключаете IDE. - person dummzeuch; 20.10.2010