Russian Qt Forum
Май 20, 2024, 19:31 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: "Прекращена работа программы"  (Прочитано 4905 раз)
vldmr_forspam
Гость
« : Сентябрь 04, 2012, 16:41 »

Здравствуйте!
Пользуюсь Visual Studio 2008. Столкнулся со странной проблемой.
Когда запускаю свою программу из среды VS в конфигурации Debug - всё работает
Когда запускаю из VS в конфигурации Release - всё работает.
Когда открываю проводником папку Debug и запускаю программу оттуда - всё работает
Когда открываю проводником папку Release и запускаю exe-шник оттуда - появляется окно приложения, но потом выскакивает сообщение "Прекращена работа программы".
В чём может быть дело?

Visual Studio 2008, QT 4.7.3.
Записан
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #1 : Сентябрь 04, 2012, 16:49 »

Цитировать
В чём может быть дело?
В битых указателях, сто пудово.

ЗЫ: Ваш К.О.
Записан

ArchLinux x86_64 / Win10 64 bit
xokc
Птица говорун
*****
Offline Offline

Сообщений: 976



Просмотр профиля
« Ответ #2 : Сентябрь 04, 2012, 16:50 »

Скорее всего в какой-либо из папок, которые перечислены в path, находятся dll из состава Qt, бинарно не совместимые с теми, на которых ведется разработка. Пока ты запускаешь проект из-под VS используются одни dll, а когда из проводника - другие. А с дебагом так не происходит, потому что debug-версий этих dll там нет.
Записан
vldmr_forspam
Гость
« Ответ #3 : Сентябрь 04, 2012, 17:41 »

Как узнать, откуда Visual Studio берёт dll-ки, на которых ведётся разработка?
PATH удалил из переменных окружения WIN7. Прога из папки дебаг перестала запускаться, требует библиотеку.
Я так понимаю что проблема уйдёт как только я либо в PATH win7 пропишу путь к dll-кам, которые использует VS.
Записан
vldmr_forspam
Гость
« Ответ #4 : Сентябрь 04, 2012, 18:49 »

Проблема решена.
Оказалось, что я вышел указателем за границы динамического массива.
Почему проблема не проявила себя, когда я запускал прогу из-под VS?
Acess violation и всё такое?
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #5 : Сентябрь 04, 2012, 18:56 »

Проблема решена.
Оказалось, что я вышел указателем за границы динамического массива.
Почему проблема не проявила себя, когда я запускал прогу из-под VS?
Acess violation и всё такое?
Цитировать
- А как же мой козырный туз не сыграл  Непонимающий
- Расклад, батенька, расклад
Улыбающийся
Записан
Bepec
Гость
« Ответ #6 : Сентябрь 04, 2012, 19:08 »

IDE негласно поддерживает программу, не даёт ей сильно разбалтываться.

Умными и точными словами не скажу почему так - не знаток. Но при запуске вне IDE можно наблюдать многие прикольные ошибки, отображённые в программе аля гонка потоков и резню памяти бензопилой Веселый
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.086 секунд. Запросов: 22.