1. 程式人生 > >Visual Stdio 2015打包安裝項目的方法(使用Visual Studio Installer)

Visual Stdio 2015打包安裝項目的方法(使用Visual Studio Installer)

ctc 定制 修改註冊表 std 方案 網上 框架 調用 情況

首先在官網下載VS2015的Visual Studio Installer

1.創建安裝項目

技術分享

技術分享

裏面最左側的框框有三個文件夾

1.“應用程序文件夾”即"Application Folder"表示要安裝的應用程序需要添加的文件;

2.“用戶的‘程序’菜單”即"User‘s Programs Menu"表示:應用程序安裝完,用戶的“開始菜單”中的顯示的內容,一般在這個文件夾中,需要再創建一個文件用來存放:應用程序.exe和卸載程序.exe;

3.“用戶桌面”即"User‘s Desktop"表示:這個應用程序安裝完,用戶的桌面上的創建的.exe快捷方式。

第二步,右鍵“應用程序文件夾”,添加——文件

技術分享

添加的文件一般是已經編譯生成過的應用程序項目的debug目錄下的exe文件(即位於../bin/Debug文件夾下的主程序exe文件);

技術分享

添加後,一般它會自動把exe程序所需的依賴項也加進來,如各種dll文件,在右側的“Detected Dependencies”裏面可以看到它自動導入了哪些依賴項,方便你檢查是否有遺漏

技術分享

接下來,可能還剩一些文件夾或者配置文件XML等沒有自動加進來,這個時候就需要自己手動添加

方式也是一樣,右鍵“應用程序文件夾”,添加——文件夾,添加——文件,這裏就不再贅述

第三步,創建快捷方式

右鍵主程序exe文件,選擇“創建快捷方式到……”

技術分享

然後,中側框框裏會出現一個快捷方式項,將它剪切,粘貼到“用戶桌面”文件夾下

技術分享

至於快捷方式的名稱、圖標、描述等其他屬性,可以在屬性面板中設置,如下

技術分享

第四步,添加卸載程序

既然有安裝就有卸載,卸載程序其實是一個Windows操作系統自帶的程序(C:Windows\System32\Msiexec.exe),只不過是通過給它傳特殊的參數命令,來讓它執行卸載

添加和設置卸載程序的操作如下:

首先,將卸載程序放在“應用程序文件夾”目錄下,右鍵“應用程序文件夾”,添加——文件,在系統盤下找到這個路徑文件——C:Windows\System32\Msiexec.exe添加進去

技術分享

由於Msiexec.exe這個名字不夠直觀,所以一般接下來我們會對它重命名,一般改為“卸載.exe”或“UnInstall.exe”,然後給它創建快捷方式並將快捷方式放到“用戶程序菜單”目錄下

技術分享

接下來是很關鍵的一步,設置卸載參數,告訴卸載程序該卸載哪個

首先,找到安裝項目的ProductCode,在安裝項目的屬性面板中可以看到,如下

技術分享

復制此ProductCode ,粘貼到“卸載.exe”快捷方式的Arguments屬性,前面加/x空格,如下

技術分享

Arguments=“/x {81575537-5736-457F-9DBE-857C1F67BE70}”記得/x後面一定要有個空格

第五步,其他設置

如果還想對安裝程序進行其他設置,比如,友化安裝歡迎界面,自定制安裝步驟,修改註冊表,設置啟動條件(比如要求必須先安裝指定的.net FrameWork版本才可以啟動)等,可以右鍵安裝項目,在View中可以進行選擇設置,如下

技術分享

有需要可以再去研究,這裏就不詳細贅述了

第六步,設置系統必備

一般我們開發的程序都有一個目標框架,也就是所依賴的.net Framework版本環境,如.net Framework 2.0/3.5/4.0/4.5等

要想我們的程序能在電腦上正常運行,首先就得保證電腦上裝有指定的.net Framework版本框架,可以在安裝包的屬性中設置,啟動安裝前檢查操作系統中是否安裝了指定版本的框架或其他依賴,設置方法如下:

右鍵安裝包項目,點開“屬性”

技術分享

然後點擊“Prerequisites……”

技術分享

選擇你程序需要的.net Framework版本以及其他依賴項

技術分享

選擇“從組件供應商的網站上下載系統必備組件”,這樣一來,即使電腦上沒有安裝需要的.net Framework也不要緊,只要設置了這項,安裝程序會自動從微軟的官網上下載對應的組件並安裝,是不是很方便

第七步,生成打包安裝文件

右鍵安裝項目,選擇重新生成

技術分享

然後打開解決方案文件夾下的Debug或Release文件夾,就可以看到生成的安裝文件

技術分享

生成的setup.exe與setup.msi的區別
setup.exe裏邊包含了對安裝程序的一些條件的檢測,比如需要.net的版本是否安裝等,當條件具備後,setup.exe接著調用setup.msi,而setup.msi則可以直接運行,如果你確定條件都具備的情況下。

Visual Stdio 2015打包安裝項目的方法(使用Visual Studio Installer)