退出程序时抛出异常(Ogre3d)
退出程序时出现奇怪的异常。 这是从今天早上开始的,我准备把我的头发拉出来。 一旦我退出程序,visual studio会发出异常并在文件crt0dat.c中的第731行停止(参见附件截图)
我知道这很少继续下去。 我尝试了几件不同的事情:
#include "windows.h"
#include "OgreRoot.h"
/// --------------------------------------------
INT WINAPI WinMain(HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT)
{
Ogre::Root* lRoot = new Ogre::Root();
delete lRoot;
lRoot = NULL;
return 0;
}
/// --------------------------------------------
由于我拥有SVN上的所有内容,因此我在笔记本电脑上运行了相同的项目,并且没有任何问题,并且没有任何问题地退出。 这使我相信我的视觉工作室在某个地方受到了损坏。 我卸载了Visual Studio,然后重新安装了它,但是问题依然存在(当VS安装它时,我的系统无处不在,无法控制它,有人知道完全销毁Visual Studio安装的绝对方法吗?)。 我缺乏想法,很少重新安装Windows。 我希望这里的某个人能够有所帮助。
调用堆栈:
048b0910()
ntdll.dll!775d9901()
[Frames below may be incorrect and/or missing, no symbols loaded for ntdll.dll]
ntdll.dll!775edc30()
ntdll.dll!775edb7c()
kernel32.dll!76c67363()
> msvcr90d.dll!__crtExitProcess(int status=0) + 0x1b bytes C
msvcr90d.dll!doexit(int code=0, int quick=0, int retcaller=0) + 0x1d1 bytes C
msvcr90d.dll!exit(int code=0) + 0x12 bytes C
OgreFWGame.exe!__tmainCRTStartup() + 0x2a2 bytes C
OgreFWGame.exe!WinMainCRTStartup() + 0xf bytes C
kernel32.dll!76c63677()
ntdll.dll!775d9d42()
ntdll.dll!775d9d15()
崩溃Screencapture:
链接文本
这不是你应该如何初始化和使用Ogre。 很可能缺少的初始化工作是导致崩溃的原因。
要开始使用食人魔,我强烈建议遵循并从教程中学习
编辑:可以在这里找到用于食人魔的visual studio项目模板:http://code.google.com/p/ogreappwizards/updates/list快速入门。
感谢大家在这个问题上的帮助。 我结束了重新安装Windows(我试图卸载Visual Studio并重新安装它,但卸载VS [我遵循微软的指示信],它会拒绝再次安装[安装程序会崩溃])出了问题。 我希望他们能够轻松卸载Visual Studio。
在我重新安装Windows之前,我浪费了大约3天的时间。 我的建议是,如果你有另一台计算机继续做你的工作,如果发生这样的事情发生,而不是浪费时间,就是做同样的事情。 如果您确实找到解决问题的方法,请让我知道:)
我最近在Visual Studio 2010中设置了魔鬼,并且直到我复制到正确的DLL中时它才拒绝正常工作 - 我一直在使用Visual Studio 2008中稍微老一点的食人魔编译的一套。它听起来像整个食人魔编译或这些DLL可能已经通过SVN被复制过,这可能会导致奇怪的问题。
无论如何,希望它有帮助。
链接地址: http://www.djcxy.com/p/17105.html上一篇: Exception thrown when exiting program (Ogre3d)
下一篇: 3D game engine for networked world simulation / AI sandbox