gpt4 book ai didi

c++ - 退出程序时抛出异常(Ogre3d)

转载 作者:搜寻专家 更新时间:2023-10-31 00:48:01 24 4
gpt4 key购买 nike

退出程序时出现奇怪的异常。这是从今天早上开始的,我准备拔头发了。一旦我退出该程序,visual studio 就会出现异常并停止在文件 crt0dat.c 的第 731 行(见附件截图)

我知道这很难继续下去。我尝试了几种不同的方法:

  1. 不执行任何操作,即根本不初始化 Ogre Core。不会导致崩溃
  2. 运行程序,除创建 Ogre root 之外的所有内容都被注释掉(这与 Ogre 本身有关,与我的代码无关),导致同样的崩溃
  3. 运行以下最基本的程序,但仍然会导致崩溃。 崩溃发生在return 0之后,当我的程序运行结束时
#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 在某个地方被破坏了。我卸载了 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()

崩溃截图:
link text

最佳答案

这不是您应该如何初始化和使用 Ogre。很可能缺少初始化工作是导致崩溃的原因。

要开始使用 ogre,我强烈建议关注并学习 the tutorials

编辑:食人魔的 Visual Studio 项目模板可以在这里找到:http://code.google.com/p/ogreappwizards/updates/list快速入门。

关于c++ - 退出程序时抛出异常(Ogre3d),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3134099/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com