一、遇到的问题
在安装了vs2017 社区版(Community)之后 想打包安装程序(winform) 还是想用之前的 installshield来打包 发现居然打不了,在官网查了 installshield不支持社区版(Community),后来尝试用vs自带的ClickOnce打包遇到以下问题:
1.严重性 代码 说明 项目 文件 行 禁止显示状态
错误 要在“系统必备”对话框中启用“从与我的应用程序相同的位置下载系统必备组件”,必须将“Microsoft .NET Framework 4.6.1 (x86 和 x64)”项的文件“DotNetFX461NDP461-KB3102436-x86-x64-AllOS-CHS.exe”下载到本地计算机。有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkId=616018
2.严重性 代码 说明 项目 文件 行 禁止显示状态
错误 要在“系统必备”对话框中启用“从与我的应用程序相同的位置下载系统必备组件”,必须将“Microsoft .NET Framework 4.6.1 (x86 和 x64)”项的文件“DotNetFX461NDP461-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 FilesMicrosoft Visual Studio 14.0SDKBootstrapperPackages(32位系统) and C:Program Files (x86)Microsoft Visual Studio 14.0SDKBootstrapperPackages (64位系统).
或者C:Program Files (x86)Microsoft SDKsWindowsv8.1ABootstrapperPackagesDotNetFX461等等
尝试了各种,没有文件夹了手动创建,也并没有什么卵用。后来在SDKs中发现了ClickOnce Bootstrapper这个文件夹 打开一看果然有这些文件。(惊喜中)
后来把下载的两个文件拷贝到DotNetFX461文件夹下(系统组件选中的4.6.1),虽然没有成功,但是发现报错有变化了(少了上面的错误2),说明这个操作对打包有影响。再各种尝试,把NDP461-KB3102436-x86-x64-AllOS-CHS.exe复制到zh-Hans文件夹中,最后居然发布成功.
三、图说解决步骤
1.打开文件路径C:Program Files (x86)Microsoft SDKsClickOnce BootstrapperPackages
2、打开相应的文件夹(我选择的是DotNetFX461),将下载好的文件拷贝进来
3.将NDP461-KB3102436-x86-x64-AllOS-CHS.exe文件复制到zh-Hans文件夹下然后你就可以发布了