![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 18.12.2010
Сообщений: 2
|
![]()
Приветствую Вас, уважаемые эксперты!
Существует некое приложение (основное), созданное в Visual C++ с использованием MFC. Предполагается создать набор DLL библиотек, связываемых с основным приложением на этапе выполнения. Библиотеки должны создавать дочерние окна, родительским для которых является окно (представление) основного приложения. Собственно, в этом и проблема. Я делаю это следующим образом: Имеется некоторый класс CMyWnd, наследующийся от CWnd. Каждая DLL в свою очередь имеет классы наследованные от CMyWnd. В каждой DLL предполагается существование функции типа этой Код:
Код:
![]() При отладке выясняется, что ошибка возникает в файле wincore.cpp, в функции Код:
Код:
Последний раз редактировалось Stilet; 19.12.2010 в 11:57. |
![]() |
![]() |
![]() |
#2 |
Новичок
Джуниор
Регистрация: 18.12.2010
Сообщений: 2
|
![]()
В общем, справился я с этой задачей и решил выложить решение. Как оказалось, проблема заключалась в самой библиотеке MFC. На чистом WinApi все работает нормально. Используя MFC, проблему можно устранить так:
1. Переопределить функцию CWnd::CreateEx в своем классе. 1. Заменить AfxGetInstanceHandle() на GetModuleHandle(NULL). 2. Заменить ::AfxCtxCreateWindowEx на CreateWindowEx. Получается что эти функции не совсем корректно работают в DLL. Разбор причины я пока отложил. Если кто знает, рад буду узнать в чем конкретно дело. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Создание окна | Stas96 | Win Api | 1 | 29.10.2010 21:58 |
Создание окна в Turbo Vision | Helle | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 02.04.2010 18:42 |
создание окна средствами API!! | LovePower | Общие вопросы C/C++ | 2 | 07.03.2010 21:29 |
Создание диалогового окна в Word | Busine2009 | Фриланс | 3 | 13.07.2009 09:37 |
Создание окна через CreateWindowEx | Nowichok | Win Api | 18 | 16.12.2006 16:37 |