JVCL содержит несколько приятных утилит, способных упростить разработку библиотек компонентов. Эти утилиты находятся в папке JVCL\devtools. Большая часть из них работает из командной строки. Большинство утилит описаны в файле devtools.txt. Этот пост является частичным переводом того файла с комментариями.
Наиболее интересным является JVCLConvert, позволяющий легко перейти с использования RxLib на JVCL. Также, разработчику библиотек может быть интересен PackagesGenerator позволяющий создавать по шаблону файлы проектов и групп проектов для разных версий Delphi (PackagesGenerator не описан в devtools.txt и я с ним тоже не разбирался).
Чтобы скомпилировать утилиты нужно запустить CompileDevTools.bat. Однако, если у вас на компьютере установлено несколько версий Delphi, то лучше скомпилировать их вручную в IDE, открыв группу проектов devtools.bpg. При использовании DFMCleaner я столкнулся с ситуацией, когда преобразованная форма отказалась читаться в Delphi6. Я не исследовал причину, но подозреваю что это случилось из-за того, что DFMCleaner был скомпилирован компилятором от Delphi 2010. После перекомпиляции вручную в Delphi 6, всё заработало должным образом.
Перед использованием утилит, обязательно сделайте резервную копию исходников (а ещё лучше, используйте систему контроля версий, например subversion).
JVCLConvert
Сканирует указанные файлы и заменяет в них одну строку на другую по словарю. В JVCL входят словари для конвертации:
- RxLib в JVCL;
- RaLib в JVCL;
- design eXperience в JVCL;
- словарик для форматирования ключевых слов в CamelCase нотацию;
- других библиотек, которые вошли в состав JVCL;
- а также словари для преобразования исходников из старых версий JVCL в новые.
MakeRC
Создаёт файл new.RC, из файлов в определённой директории. Каждая строка в полученном rc файле выглядит так:
<NAME> BITMAP "<NAME>.BMP"
Полученный rc файл можно скомпилировать в DCR-файл командой:
brc32 new.rc -r -fonew.dcr
MakeDOF
Генерирует DOF файл по шаблону. Сканирует подкаталоги и переписывает все существующие файлы.
MakeCFG
Генерирует CFG файл по шаблону. Сканирует подкаталоги и переписывает все существующие файлы.
Bpg2Make
Создаёт MAK из файла группы пакетов BPG.
JConvert
JConvert конвертирует DFM файлы из бинарного формата в текстовый и обратно. В отличии от утилиты convert.exe, поставляемой с Delphi, JConvert обрабатывает только те DFM'ки, которые действительно необходимо конвертировать: если файл уже в нужном формате, то он не будет изменён. Другое отличие – это наличие параметра -c(heck), который позволяет узнать сколько DFM-ок должно быть конвертировано, без выполнения конвертации.
isu
Убирает неиспользуемые записи из dfn-файлов (файлы для перевода на другие языки). Работает с текущим каталогом и подкаталогами, не создаёт резервные копии, и не имеет опций.
ErrLook
Delphi клон утилиты ErrLook из Visual Studio. Позволяет искать коды ошибок. См. документацию. Для компиляции требует HTMLHlp.pas из http://delphi-jedi.org (API Library Files)
DFMCleaner(dc)
Убирает неподдерживаемые свойства из DFM-ок. Свойства которые нужно убрать считываются из списка. Незаменимый инструмент, если необходимо работать с dfm-ками, которые должны открываться в разных версиях Delphi. В комплекте есть готовые списки свойств появившихся в последних версиях Delphi, таких как ExplicitHight.
dxgettextResstr
Извлекает в resourcestring все строки совместимые с dxgettext "_(строка)" . Подробнее см. devtools.txt.
ReadPalettes (Florent, rom)
Позволяет извлечь информацию об установленных компонентах в CSV файл. Устанавливается как эксперт. Подробнее см. usage.txt.
Не скомпилировались
MakePNG
MakePNG. Преобразует BMP файлы в PNG. Требует сторонний компонент TPngImage от Gustavo Daud. (http://pngdelphi.sourceforge.net/)
Res2Bmp
Извлекает bitmap-ы из RES и DCR-файлов и сохраняет их как BMP. Требует компоненты от Colin Wilson (Resource Utilities and Graphics Utilities). (http://www.wilsonc.demon.co.uk/delphi.htm)
Комментариев нет:
Отправить комментарий