Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.02.25;
Скачать: CL | DM;

Вниз

Создание MDIChild из DLL   Найти похожие ветки 

 
mikrom ©   (2001-12-26 09:46) [0]

Помогите плз. Как из длл создать MDIChild окно, из EXE вызывается функция в DLL куда передается Handle главного окна EXE файла, это окно MDI Form, когда пытаюсь вызвать Application.CreateForm(TForm1, Form1) вылетает ексепшен
"Cannot create form. No MDI form active".


 
McSimm ©   (2001-12-26 12:19) [1]

Надо в DLL подменить глобальные переменные Application и Screen на значения из приложения, сохранив оригинальные значения, которые надо восстановить перед выгрузкой DLL.


 
mikrom ©   (2001-12-26 12:35) [2]

А через Handle нельзя?


 
McSimm ©   (2001-12-26 14:16) [3]

Видел варианты подмены:
Application.Handle := HostAppHandle,

Но сам не пробовал, посоветовал то, что делал сам


 
mikrom ©   (2001-12-26 14:45) [4]

Спасибо, но вот еще вопрос.
По нажатию на кнопку динамически загружается Dll через LoadLibrary.
Показывается форма, закрывается, но при закрытии exe вылетает ексепшен, InvalidPointerOperation


 
McSimm ©   (2001-12-26 14:53) [5]

Ну тут предполагать можно много разного.
Интуиция подсказывает, что форма при закрытии не уничтожается (проверь параметр Action в событии OnClose). Потом, видимо, восстанавливается Application(или Handle) при не уничтоженной форме MDIChild.

Повторюсь, вариантов ошибки может быть много.



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

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

Наверх




Память: 0.47 MB
Время: 0.009 c
1-79348
метрА
2002-02-06 11:51
2002.02.25
Печать большого отчета в Quick Report


14-79424
Ежик
2001-12-29 11:46
2002.02.25
Мистика! Такие дела творятся, начну из далека. Я работаю Инфоруководителем в школе......


3-79293
Dup
2002-01-31 16:57
2002.02.25
lookup поле


14-79425
Knight
2002-01-03 11:29
2002.02.25
Господа, вопрос на засыпку! Где качнуть НОРМАЛЬНО ЛинуксРедНат? Чтобы РеГет взял закачку в зубы!


3-79258
tatk
2002-01-30 19:18
2002.02.25
Автоинкрементное поле