Форум: "Основная";
Текущий архив: 2003.07.31;
Скачать: [xml.tar.bz2];
ВнизКак открыть форму из bpl-файла? Найти похожие ветки
← →
Chinas (2003-07-17 11:30) [0]Подскажите пожалуйсто, как открыть форму из bpl-файла?
Я слепил формачку и откомпилил ее в bpl. Теперь хочу ее модально открыть из своего приложения (имя формы заведамо известно).
procedure TfrmMain.btnOpenClick(Sender: TObject);
var
H:THandle;
F:TForm;
FileName:TFileName;
begin
FileName:=ExtractFilePath(Application.ExeName)+"\lib.bpl";
if FileExists(FileName) then
begin
H:=LoadPackage(FileName);
...
??????????????????????????????????????????
...
F.ShowModal;
F.Destroy;
UnLoadPackage(H);
end;
end;
Кто знает как, поделитесь простеньким примером.
← →
s.ts (2003-07-17 11:37) [1]Млжно просто скомпилировать с run-time пакетами и пользоваться как обычно
← →
Chinas (2003-07-17 11:48) [2]Тут прикол в том, что я хочу формы довать приложению в виде плагинов, своего рода "набарное приложение".
У меня есть примеры использования bpl в качестве плагина, но они слишком универсальные, соответственно, слишком сложные. Я не смог в них разобраться :(
← →
AlexSV (2003-07-17 12:08) [3]Поищи в кладовке с критерием bpl
← →
s.ts (2003-07-17 12:13) [4]1 способ - реализовать в bpl простейшие функции:
CreateForm : TCustomForm;
ReleaseForm(TCustomForm)
и вызывать их для создания/удаления формы
2 способ - реализовать в bpl функцию
GetMetaClass : TClass;
и создавать/уничтожать форму в приложеннии
3 способ - получать метекласс через GetProcAddress, но там не видится простой реализации
Способ 2 - наиболее предпочтителен, т.к. создание формы в приложении позволяет стандартным способом обрабатывать исключения и т.п.
Только нужно не забыть, что пакеты, используемые bpl и приложением совместно (это не обязательно все пакеты - часто достаточно vcl+rtl) должны быть run-time.
← →
mrcat (2003-07-17 12:40) [5]Chinas (17.07.03 11:30)
в кладовке есть пример bpl-плагинов от Юрия Зотова
← →
Chinas (2003-07-17 12:55) [6]Уважаемый s.ts! А можно по подробнее про первый способ?
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.07.31;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.012 c