Форум: "Начинающим";
Текущий архив: 2007.02.18;
Скачать: [xml.tar.bz2];
ВнизПакет Найти похожие ветки
← →
sergeyst © (2007-01-29 16:45) [0]В пакете пишу
initialization
RegisterClass(TForm1);
загружаю:
var
Form: TForm;
FormClass: TFormClass;
Hand: HModule;
begin
Hand := LoadPackage("Package1.bpl");
if Hand > 0 then
begin
FormClass := TFormClass(GetClass("TForm1"));
if Assigned(FormClass) then
begin
Form := FormClass.Create(self);
Form.Show;
end;
UnloadPackage(Hand);
end;
end;
пакет загружается, класс - нет. Где я не то делаю?
← →
Сергей М. © (2007-01-29 16:47) [1]Build With Run-Time Packages = True ?
← →
sergeyst © (2007-01-29 16:56) [2]да
← →
sergeyst © (2007-01-29 16:57) [3]
> Сергей М. © (29.01.07 16:47) [1]
т.е. его там вообще нету
← →
Сергей М. © (2007-01-29 16:58) [4]
> его там вообще нету
>
Где "там" ?
Хост-приложение, использующее пакет времени выполнения, д.б. собрано с этой опцией.
← →
sergeyst © (2007-01-29 16:58) [5]вызывающий юнит не знает о его существовании, да, вроде, и не должен бы(так у Кенту написано)
← →
Сергей М. © (2007-01-29 17:02) [6]
> вызывающий юнит не знает о его существовании
Обязан узнать после RegisterClass, если RTTI-таблица (у вызывающего и вызываемого модулей) общая
← →
sergeyst © (2007-01-30 08:56) [7]Хост-приложение
Build With Run-Time Packages = Package1
Form.ShowModal;
После закрытия формы(которая в пакете) выдает Access Violation.
Надо ли делать
finalization
UnregisterClass? Хотя AV и по-любому.
← →
Сергей М. © (2007-01-30 08:58) [8]
> После закрытия формы(которая в пакете) выдает Access Violation
Что показывает отладчик ?
> Надо ли делать
Не надо.
← →
sergeyst © (2007-01-30 12:05) [9]
> Что показывает отладчик ?
Если в Дельфи загружен пакет, то все работает, если хост - AV, на последней строке(end;). Потом открывается окно CPU где вместо команд и данных (второй столбец) только ????
Написал:
...
Form.ShowModal;
Form.Free;
так все работает.
Т.е. надо освобождать пакетную форму из хост-прил.? хотя в пакете в OnClose - Action := caFree;
Если
Form.Show;
и UnloadPackage в OnClose хоста, то Form.Free делать не надо. Так и должно быть? Если да, то почему?
← →
Сергей М. © (2007-01-30 12:28) [10]Главное правило - ты вправе выгружать пакет лишь ПОСЛЕ того как созданный в пакете объект-форма будет успешно разрушен.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.02.18;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.045 c