使用VS 2019制作桌面程序的安装包
首次制作安装包
1. 新建解决方案及项目
2. 安装制作安装包的插件
-
方法一,在VS Marketplace中安装,点击下载按钮,安装完成需要重启VS
-
方法二,直接下载到本地,双击运行安装。安装完成需要重启VS
3. 新建安装包项目
命名规则:需要安装的项目名称+Setup
4. 项目新建完成,弹出安装项目引导窗口
第一步:选择项目类型,桌面程序就是默认第一个
第二步:选择安装项目的发布内容
第三步:选择附加文件、说明文档,没有的话,直接下一步。
第四步:最后,确认
5. 安装程序项目介绍
6. 重要属性说明
- AddRemoveProgramsIcon:指定要在目标计算机上的“添加/删除程序”对话框中显示的图标。
- Author:指定应用程序或组件的作者名,通常是开发它的公司的名称。Author 属性通常与 Manufacturer 属性相同
- DetectNewerInstalledVersion:指定在目标计算机上安装时是否检查有无应用程序的更新版本。
- RemovePreviousVersions:指定安装程序在安装期间是否移除应用程序的早期版本。 如果此属性设置为 True,并且在安装时检测到了早期版本,则将调用以前版本的卸载功能。安装程序通过检查“UpgradeCode”和“ProductCode”属性,来是否应移除早期版本。相同的应用程序的不同版本,必须UpgradeCode 必须相同,而ProductCode 必须不同。
- InstallAllUsers:是为一台计算机的所有用户安装应用程序,还是仅仅为执行安装的用户安装应用程序
- Manufacturer:指定应用程序或组件的制造商的名称,通常是开发它的公司的名称。Manufacturer 属性通常与 Author 属性相同
- ProductName:指定在目标计算机上安装应用程序或组件时用于描述该应用程序或组件的公共名称。 默认为部署项目的名称。安装期间显示的默认安装路径中也会出现该属性(C:Program Files制造商产品名称)
- ProductCode:为应用程序指定唯一标识符,该标识符由字符串 GUID 表示。 此标识符必须随版本和语言的不同而不同。应使用“产品代码”对话框中的 GUID 生成功能,切勿手动编辑 GUID。
- UpgradeCode:指定代表应用程序的多个版本的共享标识符(相同应用程序的标志),使用字符串 GUID 来表示。 此属性供 Windows Installer 用来在安装期间检查应用程序的已安装版本。你的软件第一个版本设置UpgradeCode之后,绝对不能在修改,否则版本更新功能(RemovePreviousVersions )和检测是否有最新版本功能(DetectNewerInstalledVersion )都将无法生效。
- Version:指定安装程序、合并模块或 .cab 文件的版本号。Version 属性必须遵循以下格式:##.##.####。
7. 配置安装项目的属性信息
8. 给主程序生成用户桌面的快捷方式和程序菜单的快捷方式
-
创建快捷方式
-
命名快捷方式(把刚生成的快捷方式重命名,新名称与ProductName一致)
-
指定快捷方式的位置(把快捷方式拖拽到左边的桌面目录,然后再生成一次,重命名,再拖拽到左边的程序菜单目录)
到此,准备工作完成。
9. 生成安装包
最后,选择项目,点击生成,即可。
生成完成后,到项目的目录下,找到生成文件。
10. 安装验证
运行setup.exe,就可以安装了。
选择文件夹:
后面,就下一步,下一步,好了。
到卸载或更改程序中查看安装信息
软件升级更新
1. 修改版本号Version属性
2. 重新生成ProductCode 的Guid
修改好Version后保存,VS会弹出提示对话框。
对比生成结果,ProductCode确实更新了。
3. 重新生成
4. 安装验证
5. 查看安装信息
参考文档
1. 微软官方文档:
制作安装包文字说明:https://docs.microsoft.com/zh-cn/cpp/ide/walkthrough-deploying-your-program-cpp?view=vs-2019#install-the-visual-studio-setup-and-deployment-project-template
部署属性说明:https://docs.microsoft.com/zh-cn/previous-versions/visualstudio/visual-studio-2010/seykw6dt(v=vs.100)
2. 国外博客:
https://www.c-sharpcorner.com/article/creating-setup-file-for-desktop-application-using-visual-stu/
3. 国内博客:
https://www.cnblogs.com/Teacher-Lu/p/11672849.html
https://blog.csdn.net/qq_41487299/article/details/100057340