管理

C# 读取dll中图片

Posted on 2021-02-23 17:57  lzhdim  阅读(334)  评论(0编辑  收藏  举报

有些时候,我们的图片资源保存到了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,保证程序的稳定以及移植扩展性。

Copyright © 2000-2022 Lzhdim Technology Software All Rights Reserved