Статьи Королевства Дельфи

       

Открытие файлов DFM версий 5 и 6 в младших версиях


Раздел Сокровищница

Появление новых версий Delphi затруднило жизнь (программистскую) тех, кто остался верен версии 4: она не может открыть проект, созданный ее потомками.

Причина проста - файлы формы сохранили расширение (DFM), но принципиально изменили содержание: в версии 4 они имели двоичный формат, в следующих версиях - стали текстовыми. Однако разработчики отказались от использования стандартного для таких файлов расширения TXT (видимо, чтобы народ не пытался работать с ними в обычных текстовых редакторах - может плохо кончиться), и новое расширение ввести не решились (DFT, например). В результате открытие проекта, созданного под версией 5-6, в версии 4 сопровождается сообщением об ошибке создания формы из-за неверного формата потока - и форма не создается. Соответственно проект невозможно использовать.

Выход, однако, есть, и даже два. Один заложен в самой Delphi: в папке BIN есть утилита convert.exe, которая как раз и занимается переводом файла формы из двоичного формата (с расширением DFM) в текстовый (с расширением TXT) и обратно. Единственная тонкость - нужно вручную сменить расширение файла формы из проекта версий 5-6: вместо DFM должно стать TXT. Дальше утилита легко создаст файл формы в родном формате с нужным расширением.

Второй вариант (если менять расширение не хочется) - воспользоваться специальными утилитами:

  • Утилита dfmconv.exe от Markus Stephany из Германии (, архив dfmconv.zip объемом 61 Кб содержит также исходные тексты утилиты): она бесплатно (по лицензии GNU) сделает все преобразования, причем исходный файл тоже сохранит.
  • Утилита D4toD5 c сайта (zip-архив exe-файла утилиты объемом 240 К). Преобразует текстовое представление форм (DFM-файлы Delphi 5) в двоичное (Delphi 4) в указанном каталоге. Исходные тексты не предоставляются.

Таким образом, притормозившие на версии Delphi-4 вполне могут изучать самые современные проекты. Простая смена формата - вовсе не повод для огорчений или спешной закупки новой версии Delphi. Конечно, в версиях 5 и 6 огромное количество преимуществ и достоинств, но если версия 4 справляется со всеми вашими задачами - не надо тратить деньги.



Содержание раздела