Kepka Опубликовано 11 февраля, 2003 Жалоба Поделиться Опубликовано 11 февраля, 2003 Господа, умеющие программировать в Visual C++, помогите пожалуйста. У меня такая проблема: я создал DLL'ку типа динамическое расширение MFC. В нее я поместил диалог, обладающий некими контролами. Диалог также обладает Pictur'ами. Я не экспортирую весь класс этого диалогового окна, а экспортирую лишь одну функцию, которая создает объект на этот класс и вызывает его через DoModal. Из использующего приложения я ловлю эту функцию при помощи LoadLibrary и GetProcAddress. Так вот, приложение и DLL я компилю как Release. Момент загрузки библиотеки и выполнения ее функций происходит в какой-то момент времени (т.е., допустим, когда юзер выполнит какие-нибудь действия, например, нажмет кнопку). Библиотека нормально загружается, нормально выполняет свои функции, затем, отработав, выгружается с помощью FreeLibrary. Ничего не вызывает никаких ошибок. НО! Но если юзер нажмет эту кнопку 10 раз, т.е. 10 раз загрузится и выгрузится эта библиотека, вот тут-то и начинаются офигенные траблы! На 11 раз библиотека тоже нормально загрузится, тоже без ошибок найдет функцию запуска диалогового окна, сидящего в DLL, даже загрузит это окно. Но с окном произойдут следующие изменения: System menu у этого окна не появится вообще, половина картинок, вставленных в этот диалог тоже не отобразятся! Выгружается библиотека в 11 раз тоже без ошибок. И так далее, в 12 раз, в 13 раз и т.д. - это окно будет криво отображаться! Может я чего не так сделал? Или может кто-то сталкивался с аналогичной проблемой? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
mmap Опубликовано 11 февраля, 2003 Жалоба Поделиться Опубликовано 11 февраля, 2003 Проверь свою прогу и DLL-ку на предмет утечек памяти. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.