欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

把DLL文件打包进EXE的操作技巧

程序员文章站 2023-11-27 09:13:10
废话就不多说了,直接进入主题吧 用vs2005建立一个windows项目,取名test引用dll文件 编写代码,正常引用dll里的类库, 同时在test项目添加资源文件(该...
废话就不多说了,直接进入主题吧
用vs2005建立一个windows项目,取名test

引用dll文件
编写代码,正常引用dll里的类库,
同时在test项目添加资源文件(该文件就是刚才引用的dll文件)
vs2005会自动生成引用代码,我这里引用的是irisskin2.dll
复制代码 代码如下:

internal static byte[] irisskin2 {
get {
object obj = resourcemanager.getobject("irisskin2", resourceculture);
return ((byte[])(obj));
}
}

然后在main(program.cs)函数里加入代码
复制代码 代码如下:

static void main()
{
application.enablevisualstyles();
application.setcompatibletextrenderingdefault(false);
string path = application.startuppath + "\";
string dllfilename = "irisskin2.dll";
//******加载irisskin2.dll******
if (!file.exists(path + dllfilename)) //文件不存在
{
filestream fs = new filestream(path + dllfilename, filemode.createnew, fileaccess.write);
byte[] buffer = getdata.properties.resources.irisskin2;//{getdata是命名空间}
fs.write(buffer, 0, buffer.length);
fs.close();
}
//*****************************
application.run(new gdform());
}

编译test项目,生成exe文件,然后删除引用的dll文件(注意是先编译,再删除)
复制该exe文件就可以在别的地方运行了(不用dll,运行exe会自动生成dll文件)