Visual Studio 2008 с Vista, ПЕРЕНАСЫЩЕНИЕ проектов выдает ошибку во время выполнения
-
16-09-2019 - |
Вопрос
Я уверен, что в моем проекте нет ничего плохого.Потому что я пробовал это на своем бывшем компьютере с Visual Studio 2005 и Windows XP pro, и это работает без ошибок.
Я могу скомпилировать свой проект.На этапе сборки ошибок нет.Но когда я пытаюсь запустить свой проект, он говорит "*.exe перестал работать".
Затем я запустил его в режиме отладки.Я увидел, что это приводит меня к строке в glut.h
static int APIENTRY glutCreateWindow_ATEXIT_HACK(const char *title)
{
return __glutCreateWindowWithExit(title, exit);
}
Я действительно не понимаю, почему это не работает..
Я скопировал glut32.dll для C:\Windows\System32
перенасыщение.от h до C:\Program Files\Microsoft Visual Studio 9.0\VC\include\GL
и glut32.lib в C:\Program Files\Microsoft Visual Studio 9.0\VC\lib
Решение
Вы пробовали отключить DEP (предотвращение выполнения данных) в своем приложении?
Щелкните правой кнопкой мыши на моем компьютере и перейдите в настройки виртуальной памяти.На вкладке DEP добавьте свое приложение в список игнорируемых.
Возможно, вам понадобится новый glut.h или переписать свой.То есть, другая библиотека перенасыщения.
Другие советы
Я часто вижу подобные ошибки - какие еще файлы вы включаете?Попробуйте включить "glut.h" до или после всех других заголовков.Кроме того, если вы включаете glut.h, вам не нужны gl.h или glu.h - они включаются автоматически.
По какой-то причине перенасыщение.h плохо сочетается с другими заголовками.Возможно, есть более технический ответ на этот вопрос или лучшее исправление, но изменение порядка всегда работало для меня!