Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Динамическое создание формы в DLL

490
17 ноября 2007 года
frid-karatel
357 / / 15.09.2007
Как динамически создать форму в DLL?

Все сделал, как надо (наверное :) ):
1. создал юнит с формой, объявил заголовок в основном юните ДЛЛ...
2. создаю форму по принципу DllForm = new TForm1(ProgForm), где:
а) DllForm - форма объявлена как глобальная (в начале юнита) - TForm *DllForm = NULL;
б) ProgForm - форма, присутствующая в приложении. Я ее объявляю родителем, чтобы при уничтожении основной формы (ProgForm) уничтожалась и моя форма.

Пытаюсь создать форму при инициализации ДЛЛ, а потом показывать ее... Но форма показывается на пол секунды и закрывается (разрушается)...

Что мне делать?
490
17 ноября 2007 года
frid-karatel
357 / / 15.09.2007
читал... и несколько раз...

у меня такая задача...

Мне необходимо создать окно при инициализации ДЛЛ, а не при вызове функции из программы... Программа, в которую я встраиваю DLL - не моя, поэтому я не могу вызывать функции... значит, мне необходимо создать форму как-то по-другому, например, при инициализации DLL... Но вот нигде не могу найти ответов - почему-то все рассматривают модальную форму, а мне надо, чтобы это была НЕмодальная форма...
11
17 ноября 2007 года
oxotnik333
2.9K / / 03.08.2007
после FreeLibrary окно из длл удалиться...
посему, ежели в exe-шнике LoadLibrary и FreeLibrary стоят в одной ф-ции то форма будет появляться в промежутке между ними...
иначе делать ее модальной, что бы брала управление на себя между загрузкой и очисткой библиотеки
1
17 ноября 2007 года
kot_
7.3K / / 20.01.2000
Цитата: frid-karatel
читал... и несколько раз...

у меня такая задача...

Мне необходимо создать окно при инициализации ДЛЛ, а не при вызове функции из программы... Программа, в которую я встраиваю DLL - не моя, поэтому я не могу вызывать функции... значит, мне необходимо создать форму как-то по-другому, например, при инициализации DLL... Но вот нигде не могу найти ответов - почему-то все рассматривают модальную форму, а мне надо, чтобы это была НЕмодальная форма...


бред. полный. пиши русским языком - что тебе нужно и как. не модальную форму - значит тебе прийдется самому обрабатывать все события. форма закрылась - значит ты должен ее удалить. и тд. что мешает тебе конкретно обращаться к функциям? Ничего. Что мешает? Не желание думать? что мешает загружать форму при загрузке длл?
Все за тебя должны сделать твою работу?

1
17 ноября 2007 года
kot_
7.3K / / 20.01.2000
тема закрыта. если есть вопросы - в личку.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог