Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.05.26;
Скачать: [xml.tar.bz2];

Вниз

DLL Как плугин? Есть проблемы!   Найти похожие ветки 

 
From_X   (2003-05-15 16:22) [0]

Если вызвать из проекта динамически процедуру из dll и
в этой процедуре создать модальную форму, то действительно так и будет НО, в task bar-е винды,будет второй трей и если нажать на кнопку вызывающего проекта, то модальная форма уйдёт вниз а проект будет также недоступен- Это ни Есть ГУД. Как обойти? и сделать так чтобы вазываемая форма из dll была такой же как если бы её вызвать нормально.


 
clickmaker   (2003-05-15 16:26) [1]

В DLL передать Application и Screen и заменить ими соотв. переменные DLL


 
CHDV   (2003-05-15 16:29) [2]

передавай в процедуру Application.Handle
и юзай его при создании окна


 
Вячеслав   (2003-05-15 16:31) [3]

А потому, что в ДЛЛ свой объект Аппликейшн и Скрин. Их ссылки надо запомнить при инициализации ДЛЛ, а соответствующим переменным в ДЛЛ присвоить значения из основной программы. По окончании все вернуть на место. Вообще-то на эту тему периодически все "трепятся", так что поищи примеры в сети понастырнее. :)


 
From_X   (2003-05-15 16:32) [4]

с Application я ещё понимаю

===========
Из проекта
PluginExec(application);
В Dll
function PluginExec(Sender:TComponent):boolean;
begin
o:=TForm2.Create(Sender);
===========

но что делать то с Application.Handle?



 
clickmaker   (2003-05-15 16:36) [5]

но что делать то с Application.Handle?

Ничего не надо с ним делать. Достаточно подменить сам Application


 
Skier   (2003-05-15 16:36) [6]

===========
Из проекта
PluginExec(Application.Handle);
В Dll
function PluginExec(AHandle : THandle) : boolean;
begin
Aplication.Handle := AHandle;
o:=TForm2.Create(Aplication);
===========



 
From_X   (2003-05-15 16:39) [7]

К слову, в dll и в основном проекте я использую одни и те же библиотеки но
в DLL
Grid1.DataSource=TDataSource(SenderForm.findComponent("DataSource1"))
в runtime говорит что типы не подходят.Как обойти?


 
From_X   (2003-05-15 16:46) [8]

Ребята с модальной формой, всё получилось, всем спасибо,
я с Dll особенно не работаю, поэтому многие тонкости просто не замечаю.
-----
Про Второй вопрос я тоже конечно слышал, что хотя и типы одинаковые но скомпилённые отдельно Dll воспринимает как другие.
НО я же компилю с типами взятыми с одного источники


 
Skier   (2003-05-15 16:47) [9]


> Как обойти?

Пиши пакеты.


 
From_X   (2003-05-15 16:50) [10]

DB :-)



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

Форум: "Основная";
Текущий архив: 2003.05.26;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.007 c
1-83454
leonidus
2003-05-13 00:38
2003.05.26
Как создать в run-time PopUp и SumItem`ами?


1-83596
BlackTiger
2003-05-13 15:26
2003.05.26
TService: как передать параметры для AfterInstall()?


14-83687
Ihor Osov'yak
2003-05-05 17:02
2003.05.26
Блин, Каzaa - как заставить работать..


6-83629
dimonich
2003-03-24 15:17
2003.05.26
Отрубить инет через опр. время


11-83432
Gandalf
2002-08-19 10:34
2003.05.26
Result:=(KOL) or (KOL and MCK);





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский