Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.02;
Скачать: 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 вся ветка

Текущий архив: 2005.10.02;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.046 c
1-1126538717
trash_s
2005-09-12 19:25
2005.10.02
FlexСel


2-1124572721
TG
2005-08-21 01:18
2005.10.02
СМАЙЛЫ


4-1123156568
grigory
2005-08-04 15:56
2005.10.02
Не удается выполнить исходящий вызов...


14-1126194925
Lexer
2005-09-08 19:55
2005.10.02
Проверка активации сервера линцензий терминал-сервера


1-1126600658
keal
2005-09-13 12:37
2005.10.02
как сделать иконку в трее в консольной программе?