1. 程式人生 > >Windows應用程式打包成exe檔案(1)- 工具簡單總結

Windows應用程式打包成exe檔案(1)- 工具簡單總結

最近有對一個Windows應用程式少許維護和修改。修改之後要釋出新的exe安裝檔案,打包exe檔案時,遇到了很頭疼的問題,還好最後解決了,記錄一下。

Visual Studio版本:Visual Studio 2017

Visual Studio 2017 打包外掛

新建專案->其他專案型別->Visual Studio Installer->Setup Project
這裡寫圖片描述
如果其他專案型別中沒有選項(Visual Studio Installer),點選“工具”,選擇“拓展和更新”,點選聯機,搜尋“Microsoft Visual Studio 2017 Installer Projects”,安裝該外掛。
這裡寫圖片描述

選擇主輸出

新建專案之後,預設自動開啟File System,右鍵點選Application Folder,新增輸出,選擇主輸出
這裡寫圖片描述

建立快捷圖示

右鍵點選“主輸出 from xxx”,選擇“Create ShortCut to 主輸出 from xxx”,新增快捷方式,可以重新命名。選擇快捷方式,左鍵長按拖動至User’s Desktop
這裡寫圖片描述
右鍵點選快捷方式,選擇屬性視窗
這裡寫圖片描述
可自選快捷方式的顯示圖示icon
這裡寫圖片描述

自定義操作

右鍵點選專案
這裡寫圖片描述
如果該專案由必選的驅動需要安裝,可以將該驅動安裝exe檔案新增到Application Folder中,選擇新增“自定義操作”,選擇該驅動安裝檔案,會在執行檔案時,呼叫驅動的安裝。
這裡寫圖片描述

外掛的好處和缺陷

好處:Visual Studio 2017自帶外掛,使用方便,比下載安裝其他打包軟體要方便的多。
缺陷:(下述缺陷很可能是因為,我沒有弄清楚該外掛的深入使用方法)

  1. 驅動安裝流程執行結束之後,無法繼續主安裝流程。
  2. 無法將所需framework環境打包進exe檔案。

打包.NET Framework環境

生成的時候,報錯,點選提示的報錯,跳轉至微軟官網如何:建立本地化的載入程式包
看文件看半天並不能解決。搜尋了很久,終於找到一篇文章【C#】vs2017 釋出工具 Visual Studio Installer 釋出包遇到的問題處理經驗
按照該文章的方式找到路徑:
C:\Program Files (x86)\Microsoft SDKs\ClickOnce Bootstrapper\Packages\DotNetFX461
將下載的檔案NDP461-KB3102436-x86-x64-AllOS-ENU.exe複製到該路徑下。
最後雖然能生成成功,但是並不是我想要的打包成一個exe檔案,很顯然,可能需要對外掛更瞭解吧,我是沒找到解決辦法。

InstallShield

InstallShield 的優點和缺點

功能強大是優點,也是缺點,因為功能強大也意味著操作複雜。

Inno Setup

官網
Inno Setup操作簡單,最後會生成一個字尾iss的指令碼檔案。
可以自己寫function。對我來說,可能會更喜歡GUI操作。Advanced Installer閃亮登場。

Advanced Installer

下一篇文章著重介紹Advanced Installer,非常好用,推薦指數五星。