| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Visual C++/MFC/WTL > VERIFY strDocName |
| Автор: ASMerg 29.9.2006, 21:47 | ||
| Всем привет! Уже не помню когда начал бороться с этой проблеммой... Давно уже. При запуске приложения вылетает ASSERT в CDocument* CSingleDocTemplate::OpenDocumentFile
Почему-то strDocName отстается пустой. И что больше всего меня пугает, это приосходит только если Use MFC in a Static Library. В дебаге вылетает АССЕРТ, а в релизе предложение отправить отчет об ошибке. Причем если запустить релиз из студии все ок, если экзешник - send error report. И еще странно что ассерт вылетает только в 2002 студии, но экзешник вылетает собранный и 2002-ой, и 2003-ей студиями. |
| Автор: Earnest 30.9.2006, 10:55 |
| Этот ASSERT Говорить всего лишь о том, что названная строка не найдена. Что-то видимо не так с модулями ресурсов, раз она их то нахродит, то нет. Ну добавь в свой модуль строку с таким ид-ром и не мучайся. Хотя данная ошибка может указывать и на более серьезную проблему... |
| Автор: ASMerg 30.9.2006, 11:35 | ||
Например? |
| Автор: Earnest 2.10.2006, 15:48 |
| Например, на ошибку в ДНК Шучу. А серьезно - ну откуда я знаю? Множество ошибок, которое можно сделать, несчетно... Но ошибка эта, скорее всего из другой серии. Если запустить поиск символа AFX_IDS_UNTITLED, то найдется он в стандартных ресурсах MFC, т.е. в твоем приложении его нет. А в cтатических библиотеках ресурсов не бывает. Скорее всего, при использовании MFC как статической библиотеки нужно стандартные ресурсы включать в свои, например инклудом. И наверняка где-нибудь об этом написано. Или визард, если ты сразу при создании проекта выбираешь использование статической библиотеки, сам включает стандартные ресурсы - может, просто копирует. Точно не знаю, потому как статически MFC не линкую. Кстати, там много символов, так что впереди у тебя еще много ассертов. |