![]() |
|
![]() ![]() ![]() |
|
maliy |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 28.12.2004 Репутация: нет Всего: нет |
У меня в *.dll функция
CreateNewCraphicWindow(HWND Parent) создает дочернее окно окна Parent, все что известно о Parent это то, что эго FormStyle = fsMDIForm, тоесть может принимать дочерние, в функции я делаю: TNewForm *res = TNewForm(NULL); HWND this_form; this_form = res->Handle; parent = (HWND) Parent; if (SetParent(this_form, Parent)!=NULL) res->FormStyle = fsMDIChild; // << вот здесь и возникает ошибка, //программа матюкается родительской формы не может быть MDI форм "Cannot create MDI form. No MDI forms are //currentlly active" res->Show(); а из главной программы вызываю функцию так Form1->FormStyle = fmMDIForm; CreateNewCraphicWindow(Form1->Handle); Поочему ошибка то? Кстате TNewForm это класс моей невой формы, можно считать эго TForm. |
|||
|
||||
Vyacheslav |
|
||||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 47 Всего: 59 |
А нафига нужен Handle?
FormStyle желательно устанавливать в дизайне. На это есть рекомендации от Borland. См хелп.
Видишь как сказано :"Не мудро " ![]() Но это все мелочи, не относящиеся к вопросу. Твоя проблема решается двумя путями: Первый - простой: собирай приложение и dll с включенной опцией Build with runtime package. Этот путь проверен. Сам так делаю ![]() Второй - более сложный: подменять Application в dll на Application из exe. Сам не пробовал но говорят помогает. То есть у тебя в dll должы быть две функции типа
Первая должна вызываться из отсновного приложения после загрузки dll Вторая - перед выгрузкой. НО предупреждаю, что если использовать второй путь(без Build with runtime package) , могут возникнуть другие проблемы. -------------------- С уважением, Вячеслав Ермолаев |
||||||
|
|||||||
![]() ![]() ![]() |
Правила форума "С++ Builder" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C++ Builder | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |