当前位置: 代码迷 >> .NET新技术 >> C# 项目中,怎么把所有文件打包成一个exe文件
  详细解决方案

C# 项目中,怎么把所有文件打包成一个exe文件

热度:490   发布时间:2016-04-25 01:24:08.0
C# 项目中,如何把所有文件打包成一个exe文件
需要做一个补丁包,功能是把主程序A要更新的文件通过另外的程序B运行放入到A的目录下,包括一些dll,图片,配置文档,脚本文件……
现在要求把所有B程序所需文件都放到一个exe当中,在打开这个exe时把所有文件都提取出来,且能运行B的主程序
------解决思路----------------------
同问 求大神解答
------解决思路----------------------
这就是客户端更新的思路不是,自己没做过,之前项目有,同事做的,大致是
1、服务端每次更新文件记录版本号,上传更新文件
2、客户端启动时自动检测服务端新版本号,匹配客户端版本号与服务端版本号,然后逐个文件更新至最新版本
------解决思路----------------------
两种思路:
1.用嵌入式资源文件:也就是常说的在实际运行的程序B之外再写一个程序C,将B要用到的所有文件打成压缩包(你可以简单使用.Net自带的gz格式),作为C程序的嵌入式资源文件,编译生成C
C启动时,利用ResourceManager.GetStream()读取资源文件,并解压缩将B释放出来,再运行B来干活
http://blog.csdn.net/xiaoyuzi/article/details/3092670

2.用windows内含的自解压工具iexpress.exe,用起来很方便。直接将B程序(可以包含A的更新部分)打成一个自解压的upgrader.exe,并设定它运行(解压)后要运行的程序(指定为B即可),这样不用再去写代码
  相关解决方案