
最近用VS2010+QT做了一個小軟件,為了把它打包發布,查了很多資料,現在總結下,便於以后查看。
本方法不限於VS2010,也不限於QT,只要你運行你的代碼得到exe之后,都可以參照本方法進行。
參考了很多鏈接一的方法,向其致謝。但是,其不夠全面,有些設置也有遺漏,本文作為對其的一個補充。
步驟一:設置可執行文件圖標(限於VS2010,其他平台如VC或者JAVA,我沒有試過,若只需使用系統默認圖標,可直接看步驟二)
1. 找一個ico文件做為圖標,例如 mylogo .ico
2. 新建一個文件 mylogo.rc, 里面寫上
- IDI_ICON1 ICON DISCARDABLE "mylogo.ico"
3. 將以上兩個文件都放到工程目錄下
4. 在VS里的右擊工程名,點擊添加將mylogo.rc添加進去
5. 右擊mylogo.rc,編譯
6. 運行你的程序,現在,在你的DEBUG(或者RELEASE,我這里以DEBUG為例,下同,DLL文件根據DEBUG或者RELEASE選擇名字里是否帶d的)下就可以看到生成的帶圖標的EXE了。
步驟二:添加依賴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/
