C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Модуль с DFM в LIB
Deem
Отправлено: 22.07.2005, 13:10


Мастер участка

Группа: Участник
Сообщений: 327



Хочется модули в библиотечку собрать. Как в LIB добавить DFM?
olegenty
Отправлено: 22.07.2005, 15:32


Ветеран

Группа: Модератор
Сообщений: 2412



Сдаётся мне — никак. Если уж при создании *.bpl это невозможно, то и при создании *.lib — тоже. Единственное, что представляется возможным, это наваять *.dll, сгенерить к ней *.lib, и цеплять статически. Если DLL не плагинового типа и указатель на глобальный Application роли не сыграет — то вот тебе и библиотека.
Admin
Отправлено: 22.07.2005, 16:11


Владимир

Группа: Администратор
Сообщений: 1190



1 Да, таким образом создал несколько .dll с .lib c нужными мне формами.

2 В принципе можно создать файл ресурсов и в нем указать Ваши
.dfm файлы, которые будут сохранены в виде ресурса, а этот файл
ресурса присоединять к нужному проекту, но ведь Вам наверное
нужны эти .dfm не в виде ресурса, а запускать эти формы ???

Только вот что еще интерсного прочитал — может это как-то можно
использовать ?

http://forums.realcoding.net/index.php?s=9...ter&f=22&t=3150
ReadComponentResFile(), WriteComponentResFile()
прочитайте Help к этим функциям.

QUOTE

Ну а притом, что для того чтобы получить например dfm формы нужно просто вызвать процедуру WriteComponentResFile(Form1,'c:\1.dfm') .Точно также все остальные компоненты могут выгружать содержимое в файл.. или любой TStream ( только процедурой WriteComponentRes ). Вот причём здесь dfm-ки.

PS только выгружаться это всё будет в старый бинарный формат dfm, который использовался в Delphi 1-4 версиях.

PPS Ессно есть и процедуры ReadComponentRes и ReadComponentResFile для юзания всего сохранённоего ранее.


То есть возникает вопрос — можно ли таким образом, получив
содержимое ресурса (некую сохраненную форму с компонентами)
запустить в работу.... Нет ... Вряд ли что получиться через ресурсы ...
это же не в двоичном прилинкованном виде

3 Скорее всего тут может помочь еще более сложная технология — COM
но это усложнит Ваши проекты в 10 раз.
Так что лучше делайте как советовал olegenty.

Или поместите готовые формы с кодом в Repository, а из него
подключайте к проектам.

Отредактировано Admin — 22/07/2005, 16:21
Deem
Отправлено: 25.07.2005, 11:47


Мастер участка

Группа: Участник
Сообщений: 327



Да, все так , к сожалению. Надеялся на чудо. smile.gif Неудобно таскать либу и десяток DFM к ней. Спасибо.
GIZMO
Отправлено: 25.07.2005, 13:28


Машинист паровоза

Группа: Участник
Сообщений: 174



QUOTE (Deem @ 22/07/2005, 13:10)
Хочется модули в библиотечку собрать. Как в LIB добавить DFM?

Сделай Expert...

Вернуться в Вопросы программирования в C++Builder