如何获得XNA 4.0游戏在其他机器上运行?
问题描述:
每当我尝试运行XNA 4.0中用于开发的机器以外的其他机器上制作的游戏时,它将不会运行。我已按照指示here确保存在所有依赖关系。如何获得XNA 4.0游戏在其他机器上运行?
要清楚,我已经做了以下内容:
- 确信我没有使用包含在
GamerServices
和Microsoft.Xna.Net.*
什么,我引用如下:
Microsoft.Xna.Framework
Microsoft.Xna.Framework.Avatar
Microsoft.Xna .Framework.Game
Microsoft.Xna.Framework.Graphics
Microsoft.Xna.Framework.Storage
Microsoft.Xna.Framework.Video
Microsoft.Xna.Framework.Xact
的mscorlib
系统System.Core程序
System.Windows.Forms的
的System.Xml
System.Xml.Linq的
我也跟着意见here到确保问题不在代码本身内。
我已经试过了如下的方法来得到它运行(在Vista和7):
- 使用内置的发布功能。这会导致错误,说明需要在GAC中提供
Microsoft.Xna.Input.Touch
。我已经尝试将Microsoft.Xna.Input.Touch
添加到引用中,但这不能解决问题。 - 本地复制XNA dll文件。这会产生一条错误消息,指出
Microsoft.Xna.Game.dll or one of its dependencies could not be located
。 - 复制包含在
Release
中的所有内容。这会导致在第二次启动时发生Application X stopped working...
或APPCRASH
错误消息。我的代码永远不会到达。
有没有什么办法让这个工作?我一直在试图解决这个问题,随着最后期限的临近,它一直是不必要的压力的来源。
答
事实证明,XNA Beta程序集仍然在开发机器上运行,VS因某种原因选择使用那些代替正确的程序集。
如果仅使用默认代码创建新项目,会发生这种情况吗?你是否尝试过多个其他机器?也许尝试重新创建您的项目。这可能与应用程序清单有关。 – Empyrean 2010-12-14 05:36:05