Вниз
Скачать: CL | DM;

Проблемы с формой из runtime-пакета   Найти похожие ветки 

 
Суслик ©   (2005-09-07 17:49) [0]

Исходники, поясняющие вопрос, расположены тут http://www.webfile.ru/505476.

Есть проект Client. Который посредством runtime-пакета PlugAncestor загружает функцией LoadPackage пакет Plug.

Пакет Plug поставляет форму-плугин.

Проект Client создает форму-плугин. При этом Owner у формы = nil.

После создания формы-плугина возбуждается исключительная ситуация, которая в обработчике Application.OnException приводит к закрытию формы.

При этом главная форма Client"а принудительно уничтожает форму плугин и выгружает Plug функцией UnloadPackage.

Если запустить Client и нажать последовательно (сверху вниз) на 3 кнопки, то в итоге в конце програмы будет Access Violation.

Буду крайне признателен, если кто-то ответит, почему происходит AV и что я не так делаю?


 
Суслик ©   (2005-09-07 17:50) [1]

Виноват. Правильный адрес такой:

http://www.webfile.ru/505476

(т.е. без точки на конце)


 
Суслик ©   (2005-09-07 18:50) [2]

Я вроде разобрался с проблемой.

Нужно
либо
  после fPlug.Close() делать Application.ProcessMessages()
Либо
  fPlug.Close() заменить на fPlug.Free()

Дело в особенностях реализации Close - вызывается Release, который посылает сообщение, которое в исходном моем коде не успевает обработаться.


 
Суслик ©   (2005-09-07 18:50) [3]

А... этта

Спасибо Акуличеву. Большое.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.024 c
1-1126206226
Kostafey
2005-09-08 23:03
2005.10.02
Глобальная книга по Delphi


1-1126532421
stud
2005-09-12 17:40
2005.10.02
переключаться между листами книги ексель


1-1126172596
AddValue
2005-09-08 13:43
2005.10.02
Delphi vs Assembler


1-1126154546
Big Joe
2005-09-08 08:42
2005.10.02
XPManifest1 не хочет исчезать


14-1126260957
КаПиБаРа
2005-09-09 14:15
2005.10.02
Хьюмор, Учебники математики для российских детишек




   Наверх