Вниз
Скачать: CL | DM;

TFrame в Dll   Найти похожие ветки 

← →
gVisio ©   (2005-10-26 12:14) [0]

как вызвать Frame из DLL и поместить его на форму???


← →
BFG9k ©   (2005-10-26 12:33) [1]

Придется немного помучаться, коллега :)

Я использовал пакеты (Packages), они генерируют bpl. Экземпляр TFrame должен быть создан внутри пакета с помощью экспортируемой функции, которая и вернет его в основную программу. Объявлять экспортируемую функцию можно в любом модуле пакета. Далее действовать также, как и с dll (LoadPackage,GetProcAddress,UnloadPackage).

Грабли:

1. В основном проекте должен быть включен флаг Build With Runtime packages (Options-Packages)

2. Все вызываемые методы и объекты должны быть описаны как в основной программе, так и в пакете. Причем вызываемые методы фрейма должны быть virtual.

3. Уничтожать экземпляры фрейма лучше тоже внутри пакета.

4. Разные пакеты не должны содержать одноименных модулей (с этим я занимаюсь сексом конкретно сейчас).


← →
clickmaker ©   (2005-10-26 12:37) [2]


> gVisio ©   (26.10.05 12:14)  
> как вызвать Frame из DLL и поместить его на форму???

собссно ниче сложного. Но есть несколько требований
1. И Exe и DLL должны быть собраны с одними и теми же runtime пакетами.
2. В DLL нужно передать Application из Exe и присвоить его апликэйшену длл
3. То же для Screen

А дальше пишешь экспортируемую ф-ию, где создаешь фрейм, возвращаешь указатель на него. А в экзе уже делай с ним, что хочешь. На форму положить - значит Frame.Parent := Form


← →
BFG9k ©   (2005-10-26 12:43) [3]

clickmaker :

Ну наконец-то. Сейчас попробуем.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.044 c
1-1130396063
VID
2005-10-27 10:54
2005.11.20
Я не могу прочитать свойство ячейки Cell.Comment.Text в Excel


14-1130485309
Juice
2005-10-28 11:41
2005.11.20
Посоветуйте книгу по Delphi 2005


14-1130428910
Gydvin
2005-10-27 20:01
2005.11.20
Помогите выбрать принтер


2-1130667922
Crazy_Diman
2005-10-30 13:25
2005.11.20
sepia


2-1131126873
ALex11
2005-11-04 20:54
2005.11.20
Модальное окно




   Наверх