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项目中修改即可。现在吧生成的安装包安装好以后关机重启,程序就可以自启动了。