Visual Studio Install 打包安裝項目2017
以下是具體步驟
一、安裝環境
1、下載:鏈接地址
2、安裝vs2017的時候需要安裝依賴 .NET framework 4.6 。下載:鏈接地址
在安裝 .NET framework 4.6 時遇到的問題,wins7 阻止安裝:有兩種解決辦法:
- 方式一: 控制面板--安全---檢查更新---更新一安裝的版本,在次進行測試。
- 方式二: 參照博客:鏈接地址
3、安裝具體細節
.NET 安裝:
vs 2017 安裝
二、開始使用
第一步、下載安裝插件
使用VS 2017的Visual Studio Installer 打包安裝項目,需要首先下載安裝Visual Studio Installer插件,如下圖所示:
(1)、工具---擴展和更新
(2)、可以進行搜索,點擊下載,我的這個是已經下載安裝好了。
第二步、創建安裝項目
里面最左側的框框有三個文件夾
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空格,如下
第六步、其他設置
如果還想對安裝程序進行其他設置,比如,友化安裝歡迎界面,自定制安裝步驟,修改注冊表,設置啟動條件(比如要求必須先安裝指定的.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則可以直接運行,如果你確定條件都具備的情況下。
看到這里已經算是成功安裝了,總結以下我在這里遇到的麻煩事情。
需求:安裝項目相對應的依賴,.NET Framework 4.0 和Vcredist 2013
1、由於我的項目是依賴.NET 4.0 的,而上述所示只有.NET 4.6的版本,沒有4.0 的,缺少了.NET Framework4.0 發布時的先決條件,我是這樣解決的 。
- 我下載了.NET Framework 4.0可再發行組件包:https://www.microsoft.com/en-za/download/confirmation.aspx?id = 17718
- 為了讓軟件包出現在“先決條件”對話框中,我從SoftPedia下載了“Bootstrap Manifest Generator”工具(http://www.softpedia.com/get/Programming/Other-Programming-Files/Bootstrapper-Manifest- Generator.shtml)。我用McAfee掃描了我的下載,這是安全的。
- 我安裝了包並運行它。下面的一系列圖片說明了我在工具上選擇的選項:
選擇“New Project”,然后選擇“Package Manifest”選項。
填寫Project Name和Project Code,然后單擊標有“Package”的白色面板上方的第一個圖標 - 瀏覽到可再發行組件包
輸入“顯示名稱”,然后單擊白色面板上方的第二個圖標。輸出文件夾將以藍色突出顯示。
移動包含文件夾(向上導航一級以將“ DotNETFX40 ”文件夾)復制到下面顯示的位置(注意,我在Windows 10上使用VS2017社區):
在我的應用程序中,在“先決條件”對話框中,我現在看到DotNETFX40文件夾,如下所示。
如下圖所示,生成的安裝包文件中也會顯示
2、要能開機自啟程序(修改注冊表)
具體操作:注冊表自己創建,修改注冊表
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit
的值為項目運行的路徑
不用自己手寫代碼,直接在vs2017項目中修改即可。現在吧生成的安裝包安裝好以后關機重啟,程序就可以自啟動了。