有些时候,我们的图片资源保存到了DLL里面,那么,在应用程序中,如何读取出来呢?
其实比较简单,我们来用C#做个简单的模型,读取DLL中的图片。
新建一个类库项目,然后新建一个文件夹,保存我们的图片。如图:
然后,我们要把图片,嵌入到DLL里面去,操作如图:
选择嵌入的资源,然后开始写代码:
using System;
namespace Dll
{
public class Class1
{
public void mydll()
{
this.GetType().Assembly.GetManifestResourceStream("Dll.image.test.jpg");
}
public System.IO.Stream ReturnStream()
{
return
this.GetType().Assembly.GetManifestResourceStream
("Dll.image.test.jpg");
}
}
}
这样,我们的类库代码就写好了【编译后就把图片嵌入到DLL中了】,接下来就要读取其中的图片:
新建一个winapp项目,在窗体上随便拖拽一个picturebox控件用来显示图片;
然后引用我们刚才创建的Dll类库【项目->添加引用->项目引用->选择刚才创建的类库】;接下来,在winapp项目的窗体也就是form1的load事件里写下如下代码:
Dll.Class1 ca = new Dll.Class1();
pictureBox1.Image = Image.FromStream(ca.ReturnStream());
然后,编译,运行。结果如图所示:
OK了,读取图片没有任何问题。
在实际开发中尽量使用.net framework提供的类库来进行操作,要避免使用特定平台的API,保证程序的稳定以及移植扩展性。
Austin Liu 刘恒辉
Project Manager and Software Designer E-Mail:lzhdim@163.com Blog:https://lzhdim.cnblogs.com 欢迎收藏和转载此博客中的博文,但是请注明出处,给笔者一个与大家交流的空间。谢谢大家。 |