Текущий архив: 2005.07.31;
Скачать: CL | DM;
ВнизRTTI? Найти похожие ветки
← →
Piter © (2005-07-09 21:54) [0]Мы находимся внутри DLL-плугина к программе. Программа написана на Delphi.
В плугин передается Application:TApplication
Можно узнать какие методы есть у главной формы (Application.MainForm)?
← →
Игорь Шевченко © (2005-07-09 21:59) [1]
> Можно узнать какие методы есть у главной формы (Application.MainForm)?
Published-методы и перекрытые виртуальные вроде при желании можно, пройдя по VMT. Статические и классовые нельзя.
Но пройти по VMT можно только руками, взяв адрес VMT из 32-х бит по адресу Application.MainForm.
← →
Юрий Зотов © (2005-07-09 22:10) [2]> Piter © (09.07.05 21:54)
ИМХО, неверная схема взаимодействия приложения и плагина. Плагин и не должен знать ничего о приложении. Это приложение должно заведомо знать, что плагин имеет заведомо определенные методы - и просто вызывать эти методы плагина, когда ему (приложению) нужно. Задача же плагина - эти методы реализовать. И все.
Если для этого плагину требуются какие-то данные из приложения, то их можно передать через callback-функции, через сообщения, через общую область данных (инициализируемую приложением) и т.п.
← →
DrPass © (2005-07-09 22:34) [3]Если нужна RTTI, плагины лучше делать в виде bpl. Впрочем, их вообще лучше делать в виде bpl, если в плагине будут использоваться какие-либо классы VCL.
← →
Anatoly Podgoretsky © (2005-07-09 22:40) [4]Если речь про RTTI, то в ДЛЛ своя RTTI
← →
Piter © (2005-07-10 01:07) [5]Юрий Зотов © (09.07.05 22:10) [2]
ИМХО, неверная схема взаимодействия приложения и плагина
программа писана не мной, и не я разрабатывал схему взаимодействия
P.S. Хм, а неужели с помошью RTTI нельзя выташить информация о методах и передаваемых в них параметрах? Вроде для того и создавалась...
Что мешает?
← →
Юрий Зотов © (2005-07-10 01:12) [6]> Piter © (10.07.05 01:07) [5]
> неужели с помошью RTTI нельзя выташить информация о методах
Для published - можно. Для виртуальных и динамических - тоже можно. Для прочих - нет.
> и передаваемых в них параметрах?
Для published - можно вытащить и параметры.
Страницы: 1 вся ветка
Текущий архив: 2005.07.31;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.04 c