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

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

Загрузка визуальных компонентов из DLL [D7, XP]


Vano85 ©   (2005-11-16 20:36:00) 


function CreateTree(x:Tcomponent; parent:TwinControl):TtreeView;stdcall;
var
T:TtreeView;
begin
T:=TtreeView.Create(x);
t.Parent:=parent;
……
……
Result:=t;
end;

Вызов:
Tree переменная процедурного типа.
Var
F:TtreeView;
Begin
…
f:=Tree(self, Form1);
…


При вызове данной функции выдается сообщение ‘Cannot assign a Tfont aTfont’ класс исключения EconvertError. Насколько я понял из всего выше перечисленного  у меня проблема с «родителем» свойство parent. Помогите  исправить мои ошибки и при возможности объясните или дайте понять в чем именно я ошибся.


Vano85   (2005-11-17 19:48:00) [1]


> Amoeba

Да в принципе Вы правы целесообразно было бы использовать register, ну или то что Вы сказали в принципе равнозначные высказывания;

> Vlad

Огромное спасибо за подсказку Вы все правильно подсказали именно в этом была проблема.


Amoeba   (2005-11-17 10:38:00) [2]

А директиву stdcallсо спокойной совестью можно убрать, в данном случае она нафиг нужна. Программы, написанные не на Delphi/Builder эту DLL все равно использовать не смогут.


Vano85   (2005-11-16 21:09:00) [3]

А вообще по самому алгоритму загрузки данного компонента Вы можете что нибудь сказать?


Vlad   (2005-11-16 20:47:00) [4]

Обычно рекомендуется в таких ситуациях компилировать и DLL и вызывающее приложение с рантайм-пакетами
В опциях проекта на вкладке Packages флаг "Build with runtime packages"


Наверх

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