Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

DesignIntf, DesignEditors


Nutz ©   (2009-10-02 12:28:00) 

Есть модуль содержащий иерархию классов наследников TForm. Проблема в следующем: в uses добавляю модули DesignIntf, DesignEditors и вызываю RegisterCustomModule для регистрации форм в IDE. Потом закидываю в package и устанавливаю.

Дальше при использовании форм-наследников в основной программе указываю этот же модуль с формами и компилятор ругается на DesignIntf, DesignEditors. Может их можно как-нибудь отключать.

Как вариант можно сделать регистрации в отдельном модуле. Тогда все OK. но хотелось бы все в одном.


Юрий Зотов   (2009-10-02 12:52:00) [1]

> Nutz   (02.10.09 12:50) [3]

Это не мой совет. Это официальный совет Borland'а. Он даже где-то в хелпе имется, только уже не помню где именно.


Nutz   (2009-10-02 12:50:00) [2]


> Юрий Зотов


Спасибо за совет


Юрий Зотов   (2009-10-02 12:44:00) [3]

>  компилятор ругается на DesignIntf, DesignEditors

Правильно. А если Вы укажете их в uses, то начнет ругаться на юнит Proxies, которого нет ни в исходниках, ни в DCU. Это еще со времен D6 идет и таким образом Borland защищалась от нарушений лицензии (по лицензии запрещено распространять модули самой IDE вместе с прикладной программой).

Правильный вариант - разбить Ваш пакет на два. Первый (run-time) пакет содержит сами формы и все, что им необходимо для работы в прикладных программах. Второй (design-time) пакет ссылается на первый в своей секции requires, а сам содерит все, что нужно только для IDE, но не нужно прикладным программам - регистрацию, свои редакторы и эксперты (если таковые имеются) ссылки на DesignIntf, DesignEditors и т.п.


Nutz   (2009-10-02 12:38:00) [4]

все придумал {$IFDEF BUILD} {$ENDIF}. тему можно закрывать.


Наверх

Титульная страница Поиск, карта сайта Написать письмо