Lazy Delphi Builder 0.9.4.100 beta4
1) Добавлена галочка включающая/отключающая копирование файлов ресурсов при компиляции
2) Добавлен параметр командной строки /CopyResources+-
3) Исправлена ошибка с добавлением пустых папок для сканирования
4) Fixed: Cannot terminate an externally created thread.
5) Добавлена возможность компилировать Debug версию DCU-шек. Это исправило "ошибку" с глюками с CodeCompletion - для нормальной работы Code Completion, как оказалось, нуждается в DebugDCU. Debug Dcu компилируются с отключенной оптимизацией(-$O-) и включенной Debug Information(-$D+)
6) При загрузке и сохранении профилей, курсор ставится в HourGlass
7) При компиляции используются короткие версии путей(8 символов)
Странный баг с Delphi 2009 и FastMM4.9 выявлен и исправлен. В новостной группе Дельфи сказали, что это из-за того, что я не скомпилировал Debug версию FastMM.dcu. Так что в LazyDelphiBuilder теперь добавлена фича создания Debug dcu. Исправлены ошибки в интерфейсе. Последний 7-й пункт я даже толком не оттестировал.
Идеи на будущее:
- мультиселект в listbox-ах (pseud)
- возможность сохранения профиля и использование его с относительными путями(CTapMex)
Хотя я пока не могу придумать как реализовать в интерейсе относительные пути. Проблема в том, что разные компоненты могут лежать на разных дисках.
привет.
ОтветитьУдалитьпо поводу последнего замечания. Все таки эта опция для структуры проекта, что ты ранее предлагал, т.е. когда компоненты идут вместе с исходниками проекта. Описание такой структуры я встречал еще на forum.sql.ru (ссылку давал ниже) в теме про виртуальные машины. Сейчас сам считаю это схему оправданной и стал применять ( в связке с multiprofile отлично работает, только там не хватает относительных путей -))
сегодня вечером проведуполноценный тест на проекте с 4 паками компонент.
для активации относительных путей надо сделать например так. кнопка, нажимая её, ты выбираешь родительскую папку проекта. программа проверяет, что все выбранные для компиляции проекты, компоненты содержатся в этой папке. иначе ошибка. ну а дальше думаю понятно.
значится так.
ОтветитьУдалитькомпилил проект,в котором используются паки EhLib, Fibplus, Odac, Raize.
в делфи не один из них не прописан был. папка с компонентами была внутри папки проекта.
первые два пака скомпилирвались нормально, другие два что то косячят. но это видимо с выбором что компилировать а что нет. пока не разобрался. когда будет больше времени погляжу. но в итоге проект был собран.
из пожеланий : как мне кажется на вкладке installation должна быть полоса прокрутки. удобнее смотреть, да и с первого раза я не понял - толи вывод короткий, толине все влезло.
по поводу компиляции у меня вопрос
на сколько я понял, ты берешь не только пути из реестра , но и из файла проекта. а у меня в свойствах проекта указаны относительные пути для поиска и всего остального. в итоге получается вот такая ситуация
"D:\Program Files\CodeGear\RAD Studio\5.0\bin\dcc32.exe" "E:\temp\components\ODAC_6.50.0.37\CoreLab.Dac.Design.dpk" --no-config -U"d:\PROGRA~1\codegear\RADSTU~1\5.0\lib;..\..\1\Dcu;..\..\1\Dcp;..\..\COMPON~1\EHLIB_~1.16_;..\..\COMPON~1\FIBPLU~1.FS;..\..\COMPON~1\ODAC_6~1.37;..\..\sources;..\..\sources\migrate" -N"..\..\1\Dcu" -I".;..\net;..\design;..;d:\PROGRA~1\COMMON~1\CODEGE~1\RADSTU~1\SHARED~1\5.0;d:\PROGRA~1\codegear\RADSTU~1\5.0\bin;..\..\COMPON~1\EHLIB_~1.16_;..\..\COMPON~1\FIBPLU~1.FS;..\..\COMPON~1\ODAC_6~1.37" -R".;..\net;..\design;..;d:\PROGRA~1\COMMON~1\CODEGE~1\RADSTU~1\SHARED~1\5.0;d:\PROGRA~1\codegear\RADSTU~1\5.0\bin;..\..;..\..\COMPON~1\EHLIB_~1.16_;..\..\COMPON~1\FIBPLU~1.FS;..\..\COMPON~1\ODAC_6~1.37;..\..\sources;..\..\sources\migrate;..\..\1\Res" -U"..\..\1\dcp;d:\DOCUME~1\ALLUSE~1\AF40~1\RADSTU~1\5.0\dcp;.;..\net;..\design;..;d:\PROGRA~1\COMMON~1\CODEGE~1\RADSTU~1\SHARED~1\5.0;d:\PROGRA~1\codegear\RADSTU~1\5.0\bin" -LN"..\..\1\dcp" -LE"..\..\1\bpl" -B -W-
т.е. относительные пути в командной строке. относительные пути в дангом случае разрешаются относительно пути к файлу проекта , или относительно текущей папки. тогда какая она эта папка в твоем случае ?
C ODAC-ом была такая фигня, ему для нормальной работы вроде была нужна условная директива($DEFINE) ODAC. Там в help-е вроде написано какая.
ОтветитьУдалитьЧто-то случилось с прокруткой. Исправлю. Спасибо что заметил.
> насколько я понял, ты берешь не только пути из реестра , но и из файла проекта.
да. эту часть на самом деле реализует JCL-ный юнит. Пути он считывает из .cfg проекта(dpr/dpk)(JCL), потом меняет текущую папку на папку с файлом проекта(dpr/dpk), переделывает все пути в относительные(!) (JCL). Потом добавляет к ним пути из LazyDelphiBuilder.
Эта часть мне не очень нравится ибо усложняет отладку, но лезть в дебри реализации JCL пока особого желания нет.