Windows phone 7 Windows Phone 7 XNA游戏加载后退出,无错误消息

Windows phone 7 Windows Phone 7 XNA游戏加载后退出,无错误消息,windows-phone-7,xna,quit,Windows Phone 7,Xna,Quit,我正在尝试让WindowsPhone7XNA游戏在模拟器中运行,但是它在调用game.Initialize函数后就退出了。它提供的唯一输出是: 类型的第一次机会例外 “System.NotSupportedException” 发生在 Microsoft.Xna.Framework.Graphics.dll 'taskhost.exe'(托管):已加载 'Microsoft.Xna.Framework.GamerServices.dll' 类型的第一次机会例外 'System.Threading

我正在尝试让WindowsPhone7XNA游戏在模拟器中运行,但是它在调用game.Initialize函数后就退出了。它提供的唯一输出是:

类型的第一次机会例外 “System.NotSupportedException” 发生在 Microsoft.Xna.Framework.Graphics.dll 'taskhost.exe'(托管):已加载 'Microsoft.Xna.Framework.GamerServices.dll' 类型的第一次机会例外 'System.Threading.ThreadAbortException' 发生在 Microsoft.Xna.Framework.dll

不知道为什么,同样的程序在运行Windows桌面时运行良好

好的,经过进一步调查,我发现出现错误是因为我正在游戏中初始化spritebatch。初始化:

        base.Initialize();
        if (spriteBatch == null)
        {
            spriteBatch = new SpriteBatch(GraphicsDevice);
        }

如果我删除spriteBach=new。。。它运行正常,但是当我初始化更新/绘制功能时,游戏将退出…

在调用
LoadContent
之前,您不能使用
GraphicsDevice
(例如,通过让
SpriteBatch
创建所需的各种图形设备资源),因为图形设备直到那时才准备好

见:

在调用LoadContent之前不要访问此属性


好的,我发现了问题所在。我基本上是试图画一个非2次方的纹理,而使用纹理包装,这是WindowsPhone7的reach API不喜欢的。我不确定为什么我没有为此引发异常(上次我做了类似的事情,我实际上引发了异常)

在我的问题上我应该更清楚,当我没有初始化spritebatch时,我也在进行抽签


无论如何,这就是问题所在。

我不确定我是否理解。当你在“更新”或“绘制”中创建spritebatch时,游戏将优雅地退出?或者它会在etc上抛出异常?这些异常是在更新/绘制调用完成后抛出的,然后我会在我的帖子中引用这些异常,然后游戏就退出了。没有错误或警告,而且我无法“捕获”异常,因为它发生在幕后……这也是我最初的怀疑(即使它在Initailize中运行过)。当我将它移动到LoadContent()时,它仍然不工作,当我将它移动到LoadContent函数完成执行后运行时,它仍然不工作,并且出现完全相同的错误。。