XNA / MonoGame发布游戏,无法将SpriteFont加载为非内容文件

时间:2014-09-06 20:04:05

标签: c# opengl xna monogame spritefont

我已经完成了一场比赛;但是,当我尝试发布它时。它发布很好,但在启动应用程序时它会崩溃 SpriteFont类enter image description here

它说它找不到MyFont.xnb(这是内容文件夹中的SpriteFont)

当我转到我的Program Files并查看时,SpriteFont在我的解决方案中无处可寻。为什么它不能与程序的其余部分一起构建?

在我的应用程序本身,我确保包含资产,如果我在我的机器上运行该程序,它工作正常。在我发布应用程序后,它只会像这样崩溃。

Proof

如何解决此问题?

2 个答案:

答案 0 :(得分:1)

尝试使用您正在使用的任何编译器检查文件的属性。

以视觉工作室为例:

确保将Build Action设置为compile。

确保复制到输出目录设置为任何但不复制,这是我的经验中monogame的默认设置。

答案 1 :(得分:0)

好的,所以我解决了我的问题:

我将我的XNB文件Build Action设置为:“Content”和“Copy always”

然后,在设置要发布的项目时,我使用的是InstallShield Limited Edition Deploy。

在询问我要部署哪些文件时,我确保选择“主要输出”“内容”和“添加文件” - > “MyFont.xnb”和我手动添加它,确保它已准备就绪。