【问题标题】:XNA/MonoGame publishing game, could not load SpriteFont as non content fileXNA/MonoGame 发布游戏,无法将 SpriteFont 加载为非内容文件
【发布时间】:2014-09-07 16:13:49
【问题描述】:

我已经完成了一个游戏;但是,当我尝试发布它时。它发布得很好,但是在启动应用程序时它崩溃了 SpriteFont

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

当我转到我的程序文件并查看时,SpriteFont 不在我的解决方案中。为什么它没有与程序的其余部分一起构建?

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

我该如何解决这个问题?

【问题讨论】:

    标签: c# opengl xna monogame spritefont


    【解决方案1】:

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

    以视觉工作室为例:

    确保 Build Action 设置为编译。

    确保将复制到输出目录设置为除不复制之外的任何内容,根据我的经验,这是单人游戏的默认设置。

    【讨论】:

    • 我做了这个,甚至做了这个帖子:stackoverflow.com/questions/7313764/… 但它们都不起作用。它说“无法将 MyFont.xnb 作为非内容文件加载 - 内部异常 -> 找不到文件”我在我的安装文件夹中打开我的内容文件夹,但文件不存在。这是我唯一的问题。
    【解决方案2】:

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

    我将我的 XNB 文件构建操作设置为:“内容”和“始终复制”

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多