在项目中常要用到,我这次也用到,所以记下来了。
第一种是如何图片嵌入到EXE中,这样可防止用户更改或删除。
只需要将图片等文件放至项目中,然后在VS.NET的属性设置栏中的“生成操作”改为“嵌入的资源”选项即可。
这种方法嵌入的资源如何在程序中调用呢?
我们可以先建好一个函数,如:
public
System.IO.Stream GetEmbeddedResource(
string
strname)
{
return System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceStream(strname) ;
}
在您的主程序中可作如下引用:
return System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceStream(strname) ;
}
this.pictureBox1.Image = new Bitmap(GetEmbeddedResource("ServerSetupGoOn.image.01.bmp"))
请注意这里的 ServerSetupGoOn 是项目的默认命名空间名
image 是我在项目下建的一个目录名
01.bmp 才是我的图片文件名
这中间分别用 “.”分隔。还要注意这里的字符串是区分大小写的。不要写错了:)
第二种是资源文件(.resx文件)
在项目中建议一个资源文件,如WinFormStrings.resx 将此文件的 “生成操作” 属性设置为“嵌入的资源”即可。
使用:
Assembly assembly
=
Assembly.GetExecutingAssembly();
//
获取当前主程序集
ResourceManager LocRM = new ResourceManager( " ServerSetupGoOn.WinFormStrings " , assembly);
this .txtTitle.Text = LocRM.GetString( " Title " );
ResourceManager LocRM = new ResourceManager( " ServerSetupGoOn.WinFormStrings " , assembly);
this .txtTitle.Text = LocRM.GetString( " Title " );