首页 新闻 搜索 专区 学院

如何将引用的第三方DLL嵌入到Exe中,一起进行打包

0
[已关闭问题] 关闭于 2013-07-22 09:38

RT

场景:一个winform 工程,中间引用了我们自己开发的一个DLL,主要完成的功能就是一些通讯上的方法。然后这个winform工程调用其中的一些公开方法。但是由于这个winform工程生成的可执行文件(exe文件)当中有一些和这个DLL不一样的版权信息。正常使用VS2010打包时,在安装工程中添加一个主输出,这样就会将Release/Debug 中生成的exe和dll一起放到安装包里,但是我这里不想让用户看到这个引用的DLL。有没有什么方法呢?

自己网上找到的一些思路:

1.将这个DLL以“嵌入的资源”方式,引用,这个方法我试了一下不是可行的。

  1)操作步骤:右击要引有的DLL文件在属性窗口中选择“不复制”,“嵌入的资源”,但是在添加引用那里不知道在哪里选择这个DLL文件。

   2)正常的引用DLL,在引用的属性里将这个DLL不复制到本地。

以上两种操作导致的结果就是使用VS调试时,会遇到“找不到XXXX,pubkey=------”这样的提示,所以我感觉应该还是在输出目录中找不到这个DLL文件的缘故。

2.引用第三方软件,将生成的Exe和DLL进行合并,然后就可以直接执行这个exe了。。DLL和exe是在一个文件里的,但是这样做又显得有点……

so....

我还不知道 还有哪些方法可以实现这样的效果。当然我现在的做法是,忽略这个DLL,就让他和exe一起出现在安装目录中。

另外还有点,这个DLL文件为什么必须要起的名字必须要和类名一样?我试着将这个DLL文件改名,然后正常引用,编译是没有问题,但是一运行,还是同1当中的2)一样,给出提示。。这是为什么呢? 

谢谢帮忙 

3Q

二十二号同学的主页 二十二号同学 | 小虾三级 | 园豆:790
提问于:2013-04-11 09:39
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册