每当我尝试在非用于开发的机器上运行用 XNA 4.0 制作的游戏时,它就无法运行。我已按照此处的说明确保所有依赖项都存在。
为了清楚起见,我做了以下事情:
- 确保我没有使用 and 中包含的任何内容
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
系统系统.Core
System.Windows.Forms
System.Xml
System.Xml.Linq
我还遵循了此处的建议,以确保问题不在代码本身之内。
我尝试了以下方法让它运行(在 Vista 和 7 上):
- 使用内置的发布功能。这会导致错误提示
Microsoft.Xna.Input.Touch
需要出现在 GAC 中。我已经尝试添加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
错误消息。我的代码永远无法到达。
有什么办法可以让它工作吗?我一直在尝试修复它,随着最后期限的临近,它成为了不必要的压力的来源。