релизы никуда не годятся
Возникла прям-таки небывалая проблема. Сегодня дорабатывал программу, в результате получил след. ситуацию. Debug версия отлично работает, а релизный exe при запуске не отображает вообще ничего! Как такое может быть?! И как от этого избавиться?
Выяснилось, что если в опциях Release в разделе с/C++ - Code Generation в качестве Runtime Library поставить Multi-threaded Debug DLL (/MDd) вместо Multi-threaded DLL (/MD), то программа уже нормально запускается и работает..
Цитата:
Originally posted by Phil
Выяснилось, что если в опциях Release в разделе с/C++ - Code Generation в качестве Runtime Library поставить Multi-threaded Debug DLL (/MDd) вместо Multi-threaded DLL (/MD), то программа уже нормально запускается и работает..
Выяснилось, что если в опциях Release в разделе с/C++ - Code Generation в качестве Runtime Library поставить Multi-threaded Debug DLL (/MDd) вместо Multi-threaded DLL (/MD), то программа уже нормально запускается и работает..
проблем может быть несколько...
Первое, что приходит в голову - в Debug версии все переменные и массивы инициализируются 0xcc а в Release - нет. Поэтому значения неинициализированный переменных будет разным в разных configurations'ах.
У меня такое довольно часто бывало. Справлялся с этим следующим образом: в разные места программы засовывал OutputDebugString, и таким образом контролировал выполнение программы. Если что-то шло не так исправлял соответствующий кусок кода.