![]() |
|
|
![]()
|
|
| 17dufa |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 324 Регистрация: 2.3.2006 Репутация: нет Всего: 5 |
Добрый день.
Один и тот же диалог из одной и той же dll в одном приложении работает, в другом DoModal возвращает -1. залез в dlgcore.cpp проблема здесь:
в одном случае hResource находится, в другом нет. а происходит это потому, что hInst в неудачном случае указывает на стандартный 0x40..0, а в рабочем варианте - на что-то пользовательское. m_lpszTemplateName в обоих случаях 0x85. FormatMessage от GetLastError выдает что-то нечленораздельное "Указанный файл образа не содержит секции ресурсов." в общем, ручками переключил использование ресурсов (AfxSetResourceHandle) на dll перед вызовом диалога и все заработало. в работающем проекте подобный эффект достигается либо другими способами, либо я это упустил при копипасте. Это сообщение отредактировал(а) 17dufa - 21.8.2009, 13:25 |
|||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
Скорее всего, одна DLL собирается как Extension (где само все работает), а вторая - как Regular.
Как раз и говорит о том, что в целевом модуле нет искомого ресурса. Просто AfxFindResourceHandle работает по-разному в Regular и Extesion DLL. Если бы ты еще и туда влез, то сам бы все понял. -------------------- ... |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |