C#应用程序中资源和嵌入式资源之间的区别是什么?

时间:2009-12-20 04:18:06

标签: c# .net wpf resources embedded-resource

我应该何时使用其中一种?

我希望我在我的应用程序中使用的所有文件(图像,声音,xml文件等)都在.exe文件中,因此我不会使用一堆文件夹和文件进行部署。 / p>

感谢您的信息。

4 个答案:

答案 0 :(得分:69)

“资源”和“内容”构建操作是使用Uris访问WPF资源。然而,“嵌入式资源”适用于现有技术。但是,两个选项都将资源嵌入到程序集中,但“资源”选项用于WPF。

MSDN提供了完整的解释here

答案 1 :(得分:7)

WPF资源(构建操作= 资源)利用核心.NET框架支持的嵌入资源,但增加了对通过pack URI访问嵌入资源的支持。来自MSDN

  

WPF资源文件不一样   嵌入式或链接式   可以使用配置的资源   核心.NET Framework支持   装配资源。而WPF资源   文件确实利用了核心.NET   框架嵌入式资源支持,   能够访问WPF资源   使用包URI的文件比   使用命名空间。

答案 2 :(得分:3)

据MSDN报道,

  

嵌入式资源是最佳选择   如果你必须分享申请   资源(.resx)之间的文件   多个项目。例如,如果你   有一个共同的资源文件   包含贵公司的徽标,   商标信息等,使用   嵌入式资源意味着你必须   只复制.resx文件,而不是   相关的资源数据文件。

     

您无法编辑嵌入资源   直。如果您尝试编辑   嵌入式资源,你会收到一个   消息提示您转换   项目到链接的资源以便   编辑它。建议进行转换,但是   可选的。你必须导出它们,制作   你在外部的修改   程序,然后导入它们   进入你的项目。

答案 3 :(得分:0)

感谢所有报告,这有助于我更准确地找到问题所在: 对我来说,在任务栏中用作项目图标的图像是作为资源构建的,必须构建为内容。所有其他图像都可以构建为资源,没问题。

希望这有助于未来。