一、遇到的問題
在安裝了vs2017 社區版(Community)之后 想打包安裝程序(winform) 還是想用之前的 installshield來打包 發現居然打不了,在官網查了 installshield不支持社區版(Community),后來嘗試用vs自帶的ClickOnce打包遇到以下問題:
1.嚴重性 代碼 說明 項目 文件 行 禁止顯示狀態
錯誤 要在“系統必備”對話框中啟用“從與我的應用程序相同的位置下載系統必備組件”,必須將“Microsoft .NET Framework 4.6.1 (x86 和 x64)”項的文件“DotNetFX461\NDP461-KB3102436-x86-x64-AllOS-CHS.exe”下載到本地計算機。有關詳細信息,請參見 http://go.microsoft.com/fwlink/?LinkId=616018
2.嚴重性 代碼 說明 項目 文件 行 禁止顯示狀態
錯誤 要在“系統必備”對話框中啟用“從與我的應用程序相同的位置下載系統必備組件”,必須將“Microsoft .NET Framework 4.6.1 (x86 和 x64)”項的文件“DotNetFX461\NDP461-KB3102436-x86-x64-AllOS-ENU.exe”下載到本地計算機。有關詳細信息,請參見 http://go.microsoft.com/fwlink/?LinkId=616018。
3.嚴重性 代碼 說明 項目 文件 行 禁止顯示狀態
錯誤 因為某項目未能生成,所以無法發布
看到這個問題
二、嘗試解決問題
看到這個問題很自然的想到要把這兩個文件(NDP461-KB3102436-x86-x64-AllOS-CHS.exe、NDP461-KB3102436-x86-x64-AllOS-ENU.exe)下載下來放到指定的位置,才能完成打包。首先去網上下載下來這兩個文件。現在關鍵問題是要把這兩個文件放到上面位置,網上搜羅一番,基本上說的是放到
C:\Program Files\Microsoft Visual Studio 14.0\SDK\Bootstrapper\Packages(32位系統) and C:\Program Files (x86)\Microsoft Visual Studio 14.0\SDK\Bootstrapper\Packages (64位系統).
或者C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\Bootstrapper\Packages\DotNetFX461\等等
嘗試了各種,沒有文件夾了手動創建,也並沒有什么卵用。后來在SDKs中發現了ClickOnce Bootstrapper這個文件夾 打開一看果然有這些文件。(驚喜中)
后來把下載的兩個文件拷貝到DotNetFX461文件夾下(系統組件選中的4.6.1),雖然沒有成功,但是發現報錯有變化了(少了上面的錯誤2),說明這個操作對打包有影響。再各種嘗試,把NDP461-KB3102436-x86-x64-AllOS-CHS.exe復制到zh-Hans文件夾中,最后居然發布成功.
三、圖說解決步驟
1.打開文件路徑C:\Program Files (x86)\Microsoft SDKs\ClickOnce Bootstrapper\Packages\
2、打開相應的文件夾(我選擇的是DotNetFX461),將下載好的文件拷貝進來
3.將NDP461-KB3102436-x86-x64-AllOS-CHS.exe文件復制到zh-Hans文件夾下然后你就可以發布了