Visual Studio 2008 выпуск версии решения фатальная ошибка

У меня есть решение Visual Studio 2008, которое состоит из нескольких проектов и использует DLL с их заголовками. В отладочной версии это (решение) работает очень хорошо. И в версии выпуска это компилируется успешно, но при выполнении некоторых функций, которые определены в файле dll, это терпит неудачу.

Как я уже сказал, решение отлично работает в режиме отладки, и параметры установлены правильно. Попробовал выключить
оптимизация, включил отладочную информацию, это не помогло. В чем может быть причина проблемы?

1 ответ

Решение

Я видел это случалось много раз прежде. Практически в каждом отдельном случае эта проблема была вызвана ошибкой при записи в массив или другую структуру данных. В других случаях использовалась неинициализированная переменная.

У вас есть ошибка в вашем коде. Это точно. Когда вы строите в настройках Debug, компилятор делает много вещей для вас, которые маскируют определенные типы проблем. Компилятор напишет код, который инициализирует нулями некоторые вещи, маскируя проблемы неинициализированных переменных.

Первое, что я хотел бы попробовать, это поднять уровни предупреждений до их максимальных настроек. Вы должны делать это все время в любом случае. Это очень часто выявляет проблему. Обязательно исправьте проблемы, о которых вам скажет компилятор. Не маскируйте их #pragmaS или Chintzy бросает. Следующий шаг через ваш код, чтобы изолировать проблему. Это может быть сложно и отнимает много времени, но есть серебряная подкладка. Какова бы ни была проблема, вероятность того, что вы повторите эту ошибку, обратно пропорциональна тому, как долго и насколько сложно выявить и исправить ошибку.:)

Другие вопросы по тегам