最近用VS2010+QT作了一个小软件,为了把它打包发布,查了不少资料,如今总结下,便于之后查看。redis
本方法不限于VS2010,也不限于QT,只要你运行你的代码获得exe以后,均可以参照本方法进行。算法
参考了不少连接一的方法,向其致谢。可是,其不够全面,有些设置也有遗漏,本文做为对其的一个补充。工具
步骤一:设置可执行文件图标(限于VS2010,其余平台如VC或者JAVA,我没有试过,若只需使用系统默认图标,可直接看步骤二)spa
1. 找一个ico文件作为图标,例如 mylogo .ico.net
2. 新建一个文件 mylogo.rc, 里面写上插件
3. 将以上两个文件都放到工程目录下blog
4. 在VS里的右击工程名,点击添加将mylogo.rc添加进去get
5. 右击mylogo.rc,编译编译器
6. 运行你的程序,如今,在你的DEBUG(或者RELEASE,我这里以DEBUG为例,下同,DLL文件根据DEBUG或者RELEASE选择名字里是否带d的)下就能够看到生成的带图标的EXE了。it
步骤二:添加依赖DLL,使得在别人电脑上能运行
1. 在桌面新建一个文件夹packet,用来存放全部你须要打包的东西,将以前的EXE文件放进去
2. 由于是VS2010程序,因此要添加VS2010运行时,在VS安装目录
D:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\redist
里找到 msvcp100d.dll msvcr100d.dll 放进packet文件夹里(注意,若是是RELEASE,就找.dll前面没有d的,下同,再也不重复)
3. 下载软件ProcessExplorer, 用于查看依赖dll ,运行你的EXE,查看(查看方式见连接一)
4. 将全部找到的dll都添加进packet文件夹
5. 如今,只需将packet文件夹整个拷给别的电脑上,就能直接运行了,若是你的要求只是让程序能在别人电脑上运行,到此就能够了。若是还要打包成安装包,继续步骤三。
步骤三:打包
1. 下载安装软件NSIS 以及插件VNISEdit
2. 运行VNISEdit, 点击工具栏的NSIS->配置
把编译器路径设置为你的NSIS路径下的 makensis.exe
把帮助设置为你的NSIS路径下的NSIS.chm
肯定退出
3. 点击工具栏 文件->新建脚本:向导
4. 这一步,能够选择一个你的ico文件做为安装包的图标,程序语言选择simpleChinese,压缩算法我选的是zlib
5. 这一步时若没有受权文件直接删除里面的内容
6. 这一步,删除中间的两条内容,用那个树状图标(addDirTree) 选择步骤二中的packet文件夹,勾选下面的两个选项
7. 这一步,若是你有多个EXE,注意选择“程序”为你的主程序
8. 下一步直到完成,也可设置卸载程序的图标,再也不赘述
9. 在VNISEdit里的工具栏 NSIS->编译脚本,等一段时间后,桌面上就有打包好的安装程序啦。
连接一:
沙漠里de烟雨__原创人生
http://zhouzhenren163.blog.163.com/blog/static/65499281201431535924246/