Странность
От: Igogo  
Дата: 21.04.02 09:05
Оценка:
Добрый день. Я в первый раз в жизни столкнулся с такой проблемой: есть программа SDI вызывающая пользовательские диалоги, в Debug версии приложение работает без проблем, в релизе только на Win2000, когда загружаю его в Win98/NT4/Me и вызываю любой диалог из мэйнфреймовского меню или тулбара, то прога ругается что не может обратиться к памяти ("программа ff не может обратиться к памяти ff.exe", "вызвала ошибку MFC42.dll"). Сам обработчик команды меню пытался запихнуть везде, т.е. в MainFrame, Doc, View — бесполезняк. Программа вылетает на строчке:

CDia dlg;
в случае с модальным диалогом и то же самое если делать его немодальным:
dlg = new CDia();
При том конструктор полностью отрабатывается и ошибка возникает при присвоении.

Может кто сталкивался с таким чудом? :\
Кони пьяны, хлопцы запряженны!
Re: Странность
От: mitq Россия  
Дата: 21.04.02 10:14
Оценка:
Здравствуйте Igogo, Вы писали:

[...]
I>Может кто сталкивался с таким чудом? :
Именно такой проблемы у меня не было, просто были проблемы с работой Release-версий программ. Чаще я ошибки находил, иногда, когда было критично время, обходил. И всегда это было связано с указателями. Это во-первых, а во-вторых: http://www.rsdn.ru/?article/?vcpp/survrls.xml
Автор(ы): Dr. Joseph M. Newcomer
Дата: 18.06.2001
Статья посвящена проблемам перехода с Debug-версии на Release-версию. Рассматриваются
типичные ошибки, которые могут не проявляться в отладочной версии, но проявляются в финальной.
Обсуждается вопрос "ошибок компилятора" и вопросы необходимости оптимизации и ее побочные эффекты.
В последней редакции добавлен раздел посвященный проблеме совместимости динамических библиотек.
Re: Странность
От: Dutchman Беларусь http://blogs.rsdn.org/ikemefula
Дата: 21.04.02 11:59
Оценка:
Здравствуйте Igogo, Вы писали:

I>Добрый день. Я в первый раз в жизни столкнулся с такой проблемой: есть программа SDI вызывающая пользовательские диалоги, в Debug версии приложение работает без проблем, в релизе только на Win2000, когда загружаю его в Win98/NT4/Me и вызываю любой диалог из мэйнфреймовского меню или тулбара, то прога ругается что не может обратиться к памяти ("программа ff не может обратиться к памяти ff.exe", "вызвала ошибку MFC42.dll"). Сам обработчик команды меню пытался запихнуть везде, т.е. в MainFrame, Doc, View — бесполезняк. Программа вылетает на строчке:


I>CDia dlg;

I>в случае с модальным диалогом и то же самое если делать его немодальным:
I>dlg = new CDia();
I>При том конструктор полностью отрабатывается и ошибка возникает при присвоении.


Эка ты загнул :


CDia dlg;

dlg = new CDia(); // для чего это тебе ? Объект то уже создан в первой строке


Попробуй так, если хочешь всетаки динамически:

CDia* pDlg = NULL;

pDlg = new CDia();
Re[2]: Странность
От: Igogo  
Дата: 21.04.02 12:39
Оценка:
D>Эка ты загнул :


D>
D>CDia dlg;

D>dlg = new CDia(); // для чего это тебе ? Объект то уже создан в первой строке
D>


D>Попробуй так, если хочешь всетаки динамически:


D>
D>CDia* pDlg = NULL;

D>pDlg = new CDia();
D>




Ну это понятно, я просто два способа открытия диаложки имелл ввиду, всё равно спасибо :))))))
mitq, большое спасибо за ссылку, "кажется я начинаю что-то понимать" :))))))))))
Кони пьяны, хлопцы запряженны!
Re[3]: Странность
От: Slayer Россия  
Дата: 22.04.02 01:42
Оценка:
У меня была где-то год назад такая проблема. Связана она была то ли с тем что сервиспак не стоял(нужен 5-ый), то ли с тем что VC какой-то косячный был. Попробуй поставить сервиспак 5, либо студию с другого диска поставь...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.