我正在为XNA中的学习目的开展个人项目。我在网上看到,使用内容管道需要人们安装xna运行时。所以我决定使用 Texture2D.FromStream 加载文件。
当我从visual c#运行项目时,一切都很好,但是当我发布项目并运行它时,它立即崩溃了。我不确定是否有办法看到有关崩溃的更多信息,但我不认为。我认为这不是使用内容管道。
当我查看已发布项目的应用程序文件时,我只看到.xnb文件。并且没有我正在使用的原始.png和.xml文件。
我试图手动将文件放在那里,但这也不起作用。 这些文件都在“Projectname \ bin \ x86 \ Debug \ Content”文件夹中。
任何人都有任何想法?
修改
我刚刚重写了我的内容管理器,因此它使用内容管道,现在已发布的项目在我的电脑上工作正常。所以我必须想办法让它在没有内容管道的情况下工作
答案 0 :(得分:2)
如果你使用Texture2D.FromStream,你必须关心两个事实:
您必须更改某些资源的属性:
复制到结果文件夹:始终
这样,xnb将不会被构建,您将获得资源
您必须设置适当的路径,现在您的路径中没有“bin \ Debug”。
答案 1 :(得分:0)
正如@Blau所提到的,更改图像的属性将解决您的问题。如您所见,现在所有平台上的框架都完全支持FromStream方法:
http://blogs.msdn.com/b/shawnhar/archive/2010/05/10/image-codecs-in-xna-game-studio-4-0.aspx
就看到错误而言...你总是可以试着抓住你认为抛出错误的声明,然后将错误文本写到屏幕上,这样你就可以看到它。像
这样的东西try
{
//The offending code
}
catch(Exception ex)
{
WriteError(ex.Message);
}