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

posted @ 2010-08-27 19:13  ☆会飞的鱼☆  阅读(758)  评论(0编辑  收藏  举报