Winform 升级解决方法之EXE资源文件解压更新

Winform 升级解决方法之EXE资源文件解压更新

 

   Winform 程序经常会遇到升级的问题,下面介绍一个用C#生成exe文件自解压的升级解决方法。思想如下:

   一、把要升级的文件当作资源文件,生成一个EXE程序;

   二、下载上面生成的EXE文件到本地;

   三、把EXE中包含的资源文件读出来,并保存到一个目录;

   四、用解压出来的文件覆盖原运行程序相差文件。

 

这里需要了解下资源文件,Winform程序中,增加资源文件时,程序会把文件保存为二进制文件,并且会打包到EXE程序里。所以就可以实现一个EXE文件里包含需要更新的文件了。解压更新文件则可以调用EXE本身的方法,从自己的资源文件中读出来并保存在一个目录中。

 

具体过程如下:

   主要代码是从EXE资源文件中解压出更新文件,可以调用

File.WriteAllBytes(string sPath,byte[] sBytes)方法实现,该方法是从一个byte[]中读取文件并保存到sPathsPath要求包含文件名称。

如方法

File.WriteAllBytes(m_sDownPath +"\\Contract.dll", Resources.Contract);

其中Contract为增加的资源文件Contract.dll

作者:chhuic

出处:http://chhuic.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

原文地址:https://www.cnblogs.com/chhuic/p/1810355.html