Visual Studio 2010 — Создание отладочной сборки C ++ ведет себя как сборка релиза в VS2010

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

Есть ли способ заставить режим отладки генерировать исключения, которые генерирует сборка релиза?

-2

Решение

Что-то вроде удара в темноте, но стандартное различие между сборками отладки и выпуска состоит в том, что все переменные в сборке отладки инициализируются независимо от того, действительно ли вы делаете это в коде, тогда как в режиме выпуска это не так. Итак, просмотрите ваш код и убедитесь, что каждая переменная инициализируется в точке объявления, и посмотрите, решит ли это проблему.

0

Другие решения

Хммм … думаю, я понял.
Мой процесс загружает другие библиотеки DLL как плагины.
Я заметил, что когда я запускаю свой процесс в режиме выпуска и загружаю библиотеки DLL, созданные в режиме отладки, или наоборот, происходит сбой.

Я предполагаю, что некоторые объекты, импортированные из плагинов, имеют разную компоновку или размер в режиме выпуска или отладки.

Если кто-нибудь может дать лучшее объяснение этому, это будет здорово 🙂

0

По вопросам рекламы [email protected]