如何将引用别人的DLL,封装到一个exe文件中

边城的刀声 2011-10-10 01:53:40
我的项目中要引用,比如A.dll,B.dll,现在我想把我的项目生成时,连同A.dll,B.dll生成一个文件C.exe,请问如何实现
...全文
538 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Bullatus 2011-10-10
  • 打赏
  • 举报
回复
打包成资源文件,这样就嵌入到exe中了,但你还需要解决运行时引用的问题
在应用程序加载dll时会引发AssemblyResolve事件(4.0所有程序集,<4.0只有加载失败的程序集)
你在这个事件的处理程序中return所需要的程序集就可以了。

参考MSDN
ChrisAK 2011-10-10
  • 打赏
  • 举报
回复
ilmerge+1
他山玉 2011-10-10
  • 打赏
  • 举报
回复
做为被引用的dll库,在运行时必须是独立存在的文件。不然会提示找不到链接库的。
风骑士之怒 2011-10-10
  • 打赏
  • 举报
回复
ILMerge /target: exe /out: output.exe input1.exe input2.dll input3.dll
风骑士之怒 2011-10-10
  • 打赏
  • 举报
回复
ILMerge
  • 打赏
  • 举报
回复
放到当前项目的bin文件夹下,项目引用它
边城的刀声 2011-10-10
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 bdmh 的回复:]

你引用a和b就是了,然后将属性中 复制到本地 设置为true,这样编译时,就把a和b放到exe同目录下了
[/Quote]
帮一同事问的,他非要将两个dll放到一个exe中,请问有没有解决方法?
bdmh 2011-10-10
  • 打赏
  • 举报
回复
你引用a和b就是了,然后将属性中 复制到本地 设置为true,这样编译时,就把a和b放到exe同目录下了
  • 打赏
  • 举报
回复
好像是在在工程文件上右键-编译操作-嵌入的资源

110,570

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧