我正在尝试通过 Visual Studio 发布工具发布 XNA 游戏。游戏使用了一些编译和一些非编译的内容。基本上,我通过 XML 序列化和一个短视频加载了一个关卡。这两个文件本质上是流式传输的,因此它们没有被编译。发布工具包含编译好的内容,但对相对路径的任何引用都被破坏,因为已安装程序的 CurrentDirectory 设置在 AppData 文件夹中。

我知道 XNA 现在无需编写自定义内容处理器就可以编译 XML,但我并不特别想回去重写它。如果没有其他选择,我想我可以,但这仍然不能解决视频问题。

有什么方法可以设置发布工具,以便我可以做我需要做的事情?设置什么的?或者我是否需要使用像 NSIS 这样功能更全面的工具?

最佳答案

右键单击项目,添加现有资源,浏览并选择要添加的文件。然后右键单击该文件并单击属性并将“构建操作”更改为内容,并将“复制到输出目录”更改为如果更新则复制(或者如果需要,则始终复制)。然后您可以使用相对路径访问它。

我将它用于我的 XML,我可以使用以下代码访问我的内容:

XmlDocument document = new XmlDocument();
document.Load("Resources/DefaultConfig.xml");

请注意,我的 DefaultConfig.xml 文件位于我在 Visual Studio 中创建的“资源”目录中(这是可选的,但它帮助我保持项目整洁)

关于c# - 如何在通过 Visual Studio 发布的 C# 程序旁边包含未编译的内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2316594/

10-13 08:28
查看更多