2

我想在.NET项目中添加/更新图像资源,以便在编译应用程序时,图像将在运行时可用。将图像文件资源添加到另一个项目

由于在多个位置有大量的图像,我想使用单独的vb.net项目来做到这一点。

我可以看到这样做的唯一方法是将图像文件复制到[Project]\Resources文件夹,然后编辑[Project]\My Project\Resources.resx使用这种图像文件,但是这似乎有点哈克,我不知道如何挑剔的Visual Studio是关于resx文件的格式。

有没有其他方式做到这一点?

回答

1

可以使用ResourceWriter类以编程方式直接从代码创建二进制资源(.resources)文件。

using (ResourceWriter rw = new ResourceWriter(@".\CarResources.resources")) 
    { 
     Image im = Image.FromFile("C:\\sample.jpg"); 
     rw .AddResource("sample.jpg", im) 
     } 

您还可以使用资源文件Generator器(Resgen.exe)创建一个文本文件或.resx文件为.resources文件。

+0

我看到了这个,但你可以这样编辑资源吗? (只是为了我自己的知识):) - OP的标题和问题表示不同的事物。 –

+0

@Rikoshay - 道歉我已编辑标题,希望更清楚 –

+0

是的,你可以.. http://stackoverflow.com/questions/676312/modifying-resx-file-in-c-sharp或者你需要打开文件写模式和编辑。 – paragy

2

在这里你去:)看你的广告代码,就不需要很多的话

短甜美减少到这样一点油漆解释

enter image description here

+0

谢谢 - 我正在寻找一种方法来做到这一点编程虽然! –

+0

虐待周围,尽管我不确定这是否可以从您想要更改的应用程序完成,因为您的EXE将因您使用它而被锁定。我做了一些测试1时刻 –

+0

[检查这篇文章](http://stackoverflow.com/questions/9349784/updating-images-in-resource-section-of-an-exe-in-cc#9446836)大致相同问题 - 如果回答你的问题,为什么不通过标记这个答案来完成关闭这个问题:) –