在64位Windows 7上运行XNA游戏的问题

时间:2010-04-09 14:16:39

标签: c# .net 64-bit xna distribution

我在让我的游戏引擎在我兄弟的机器上运行时遇到了问题,该机器运行的是64位Windows 7.我正在开发32位XP SP2。

我的应用程序使用XNA,FMOD.NET和我在C#中完全编写的另一个dll。一切都针对x86,而不是AnyCPU。我已经读过,这是XNA工作所必需的,因为没有64位的xna框架。我将FMOD.NET重新编译为x86,并确保使用32位版本的本机dll。所以我没有看到任何问题。

然而,当他试图运行我的应用程序时,它会产生一个神秘的错误,但并非闻所未闻。

具有空文件名的FileNotFoundException,堆栈跟踪的顶部位于我的主窗体构造函数中。消息为The specified module could not be found. (Exception from HRESULT: 0x8007007E)

我在网上发现了一些关于这个错误的线索,所有这些都是非常模糊,混合和模糊的反应,并没有真正帮助我。大多数提醒人们瞄准x86。有人说检查他们是否有必要的所有dll。

我给了我的兄弟Microsoft.Xna.Framework.dll,但他是否需要安装整个XNA可再发行组件包?当我拿走他寄给他的所有内容并将其粘贴在一个随机目录中时,它对我来说仍然运行良好。我在VS2008中开发了游戏,在游戏工作室中,使用XNA 3.0和使用XNA绘图的Windows窗体控件,我在msdn教程中找到了它。如果可能的话,我还想避免要求完整的安装程序。

有什么见解?请?

3 个答案:

答案 0 :(得分:3)

我首先让他尝试为XNA安装可再发行的打包程序。可再发行软件包的全部内容:

  

“XNA Framework可再发行组件   下载为游戏开发者提供   XNA Framework运行时库   他们可以包括他们的产品“

我还没有尝试在Windows 7 64上运行XNA项目,但我确实在Vista 64上运行良好。你可以在here之类的地方看一下但是我没有能够找到微软特别提到Windows 7支持的任何地方。 Wikipedia表示它支持Windows 7,但我从微软发现的大部分内容仅正式支持Windows XP / Vista,例如this

  

XNA Framework Redistributable   下载为游戏开发者提供   XNA Framework运行时库   他们可以包括他们的产品   在Windows XP和Windows上重新分发   Windows Vista。

如果这意味着您不必为Windows 7支持下载它,也许。但就像我说的那样,我没有亲自尝试过。

答案 1 :(得分:1)

您需要安装XNA Framework Redistributable。 Windows 7预装了.Net 3.5,但不是XNA库。

我认为Microsoft's download site未列出受支持的操作系统列表中的Windows 7,因为发布日期是6/11/2009,远在Windows 7正式发布之前。

答案 2 :(得分:1)

没有64位版本的xna,因此您必须将程序集/程序定位到基于x86的处理器(对于Windows) 请参阅 http://www.start64.com/index.php?option=com_content&task=view&id=1932&Itemid=114 了解更多详情。