Я нашел способ сделать это, не перемещая файлы .dfm в каталог файлов .dcu, так что вы можете иметь каталог только для файлов .dcu, один только для файлов .dcp и другой только для файлов .bpl.
Все, что вам нужно сделать, это создать еще один каталог с хорошей структурой, как я.Каталог называется RES, и в него должны быть помещены все файлы ресурсов (файлы .res, а не файлы .dcr), которые используются приложениями, скомпилированными с использованием ваших пакетов (компонентов).В пути к библиотеке Delphi вы должны включить в дополнение к каталогу DCU (у вас уже должен быть) каталог с именем RES.
В вашем компоненте (время разработки) делайте все, что вы хотите с формой (проектируйте еепоставить другие компоненты и т. д.).В исходном коде модуля вы заменяете {$ R * .dfm} на {$ R UnitName.dfm}.При этом сохраните все и закройте DPK.Теперь переместите файл .dfm (не копируйте, переместите!) В папку RES (файл .dfm - это файл ресурсов в Delphi. Директива {$ R} является доказательством!) И после этого снова откройте DPK, чтобы понятьчто изменилось.
Сначала поймите, что вы не можете открыть форму (F12) из его устройства, хотя Delphi не выдавала ошибку об "DFM отсутствует".
Теперь выполните Buildна вашем пакете, а затем установите его.Понял снова?Ошибки не отображаются!Это произошло потому, что вы указали расположение файла .dfm в пути поиска библиотеки Delphi (каталог RES).
Готово!Вы можете использовать свой компонент, и dfm будет найден, когда ваш компонент включен в приложение.
Многие из вас теперь могут сказать, что таким образом я больше не смогу визуально редактировать форму во время разработки компонента.,Да, это правда, но если вы подумаете об этом, почему я хотел бы так часто менять форму на компонент, который на практике следует использовать только и слегка отредактировать?Сделайте свои собственные выводы;)