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

Вниз

Хранение панели настроек плугина в самой DLL   Найти похожие ветки 

 
Knight   (2003-06-09 12:50) [0]

Прочитал тут статью "Использование и создание DLL в Delphi" и решил реализовать свою прогу в виде плугинов, чтобы проще было расширять её возможности. Но возник вопрос: с формами понятно, но можно ли встроить в DLL панель с настройками, а подгружать и использовать её в основной программе, например в PageControl или отображать при выборе имени модуля в ComboBox"е или TreeView?


 
DmS   (2003-06-09 12:56) [1]

переходи на packages


 
Knight   (2003-06-09 15:06) [2]

И что?


 
Knight   (2003-06-09 15:32) [3]

И вообще желательно DLL...


 
VMcL   (2003-06-09 15:35) [4]

>Knight © (09.06.03 15:32)

А packages - это не DLL?


 
Knight   (2003-06-09 15:38) [5]

А, как?


 
Sandman25   (2003-06-09 15:58) [6]

Knight

Я тут тоже недавно заинтересовался package. Насколько я понял, это та же dll, но которая использует run time packages типа vcl и rtl. То есть с помощью packages можно добиться того, что TFont из Dll будет тем же самым, что и TFont в вызывающем приложении. Соответственно можно будет строить нормальное vcl приложение.


 
Knight   (2003-06-09 16:44) [7]

Формулирую вопрос ещё раз...
Решил переделать свою прогу в виде плугинов, чтобы проще было расширять её возможности. Вопрос: с формами всё понятно, создал вызвал, отработала, закрыл... но можно ли встроить в DLL или package панель с настройками и подгружать её для использования в основную прогу, чтобы настройки всех элементов были в одном месте, например в PageControl или связать их с ComboBox"е или TreeView?

Была мысль сделать её в виде фрейма, но как организовать подгрузку этого фрейма из левого для базовой проги файла (DLL, package)?



 
DmS   (2003-06-09 16:51) [8]

непонятно, как ты собрался передавать объекты между модулями (dll)


 
Sandman25   (2003-06-09 17:01) [9]

>Была мысль сделать её в виде фрейма, но как организовать подгрузку этого фрейма из левого для базовой проги файла (DLL, package)?

Насколько я понял, можно будет использовать функцию, возвращающую любой объект (TPanel, TForm и т.д.), либо то же самое через var параметры.
Но лучше подождать ответа опытных, у меня только теория.



 
DmS   (2003-06-09 17:04) [10]

> можно будет использовать функцию, возвращающую любой объект (TPanel, TForm и т.д.)

ну-ну ...


 
DmS   (2003-06-09 17:06) [11]

используй packages
с помощью dll такое не пройдет


 
Knight   (2003-06-09 17:09) [12]

>> DmS (09.06.03 16:51)
Знал бы... не спрашивал... :)
Но, я так понимаю, надо передавать не объект, а копию его или ссылку на него, лишь бы не переделывать основной код при добавлении нового модуля, а реализовать механизьм для настройки свойств этого модуля из вне, при этом беря ранель со свойствами из него самого. И только-то... :) Ну и где тут мастера?


 
Sandman25   (2003-06-09 17:15) [13]

DmS (09.06.03 17:04)

Я писал про packages


 
DmS   (2003-06-09 17:20) [14]


> Но, я так понимаю, надо передавать не объект, а копию его
> или ссылку на него, лишь бы не переделывать основной код
> при добавлении нового модуля, а реализовать механизьм для
> настройки свойств этого модуля из вне, при этом беря ранель
> со свойствами из него самого. И только-то... :) Ну и где
> тут мастера?


давай так. почитай про реализацию plugIn"s при помощи packages
http://iamhere.inso.ru/2
статья толковая (с примером)
а то так тяжело говорить :(
скажу только, что для твоих требований обычный DLL не подойдет


 
Knight   (2003-06-09 17:43) [15]

>> DmS (09.06.03 17:20)
Ну вот! Первая дельная информация... спасибо , почитаю. :)





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

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

Наверх




Память: 0.47 MB
Время: 0.043 c
4-84856
Great_Lesh
2003-04-22 16:40
2003.06.26
Запуск файла/процесса от имени другого пользователя


14-84730
SpoinT
2003-06-05 15:33
2003.06.26
Как изменить заголовок файла exe


3-83976
LeReve
2003-05-29 16:32
2003.06.26
как можно запретить добавление записей, но разрешить их редак...


6-84511
Gandalv
2003-04-19 18:12
2003.06.26
TWebBrowser


14-84523
Omar2002
2003-06-06 12:03
2003.06.26
Студинт - Пиво





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский