今天做了一个IM自动更新的软件,里面牵扯到了文件的解压和接口签名加密,使用了2个第三方的dll,想发布的时候才发现调用的类没几个,就像把它们都跟EXE文件打包在一起,以后复制去别的地方用也方便,于是上网搜了一下,发现网上大部分都是用ILMerge实现的,于是也自己试了一下,不过网上都没有详细的步骤演示,我就花点时间做了个教程,方便以后再有人想打包自己的程序,有篇文章可以参考,好了废话少说,马上开始: 1.先到http://www.microsoft.com/downloads/details.a…
有些文件是必须一起使用的,如果能把多个DLL打包成一个DLL文件,那么引用文件的时候就不需要一个个地去引用,而且每次移动文件的时候也不至于少了哪个必须的DLL文件. 多个DLL文件打包成一个DLL文件的方法如下: 1.先到下面的网址下载ILMerge安装 http://www.microsoft.com/en-us/download/details.aspx?id=17630 2.安装完之后,执行cmd命令,进入ILMerge目录, 把test.dll. test1.dll. test2.dll…
ILMerge是一个将多个.NET程序集合并到一个程序集中的实用程序.它既可以作为  开源使用,也可以作为NuGet包使用. 如果您在使用它时遇到任何问题,请与我们联系.(mbarnett _at_ microsoft _dot_ com).但首先尝试阅读文档. ILMerge接受一组输入程序集并将它们合并到一个目标程序集中.输入程序集列表中的第一个程序集是主程序集.当主程序集是可执行文件时,目标程序集将创建为具有与主程序集相同的入口点的可执行文件.此外,如果主程序集具有强名称,并且提供了.sn…
当发布的程序有引用其它dll, 又只想发布一个exe时就需要把dll打包到exe 当然有多种方法可以打包, 比如微软的ILMerge,混淆器附带的打包... 用代码打包的实现方式也有很好,本文只是其中一种实现方式,不需要释放文件! 方法如下: 1.项目下新建文件夹Resources 2.把要打包的dll文件放在Resources文件夹下,并包括在项目中 3.右键文件属性, 生成操作选择嵌入的资源 4.实现如下代码, 在窗口构造中实现也可以(在窗体事件中无效,如winform_load) usin…
大家都知道做winform开发,是可以利用visual studio进行打包的,但是这种打包的方式需要双击安装,那么有没有什么方法,可以把winform程序打包成绿色版呢?当然,这里的“绿色版”也是相对的,如果您本地没有安装对应的.net Framework环境,也是无法运行的. 下面是本次winfrom程序打包演示的程序,及程序结构 1.利用微软官方工具ILMerge合并程序集 a.将visual studio生成的dll,exe打包成一个exe文件,我们需要用到ILMerge,ILMerge…
1.利用itextsharp.dll实现单个图片文件转换为PDF格式文件, 可以使用以下类: void ConvertJPG2PDF(string jpgfile, string pdf) { var document = new Document(iTextSharp.text.PageSize.A4, 25, 25, 25, 25); using (var stream = new FileStream(pdf, FileMode.Create, FileAccess.Write, File…
将ocx文件转换成C#程序引用的DLL文件的办法  将ocx文件转换成C#程序引用的DLL文件的办法,需要的朋友可以参考一下  1.打开VS2008或VS2010命令提示符(此例用VS2008) 将ocx文件拷贝到d:\Program Files\Microsoft Visual Studio 9.0\VC下 2.注册ActiveX控件 regsvr32 IB_USBKEY.ocx 3.编译OCX文件 aximp IB_USBKEY.ocx 生成两个dll文件,项目中引用Ax前缀的文件 4.将生…
在读取RedisSessionStateProvider配置 提到用mono ceil 来修改程序集以及它的签名,里面GetPublicKey 和GetPubliKeyToken 方法里面那个字符串的获取 以及后来的签名 我们都应该 用code来实现,还有应用该dll文件的签名也一同需要修改. 所以我这里实现了一个简单的helper方法 如下: namespace ConsoleSession { using Mono.Cecil; using System; using System.IO;…
使用VS的时候   偶尔会出现错误 [未能找到元数据文件“引用的DLL的路径”] 但是实际上项目中这些DLL都是做了引用的,甚至你前一天打开还是好好的,睡一觉起来 不知道什么原因 就酱紫了 原因:不详 处理方法: 找到文件夹 C:\Windows\Microsoft.NET\Framework 我的是v4.0.30319 进去之后 清空文件夹 Temporary ASP.NET Files 下的内容  重开项目即可…
前几天一直想引用别的DLL里面的一个图片.总是出现各种各样问题,一气之下将图片拷贝到当前Project中,运行良好.虽然知道引用图片,就1.2.列出来的2点就够了. 1. The Build Action should be Resource instead of Embedded Resource. 2. In the WPF application with the following XAML: <Image Source="/ClassLibraryName;Component/i…