使用visual studio 2017打包程序

打砖块.png

最近学习opengl按照https://learnopengl.com/中的教程做了一个打砖块的游戏,顺便学习了如何将程序制作成安装包,这里记录下打包的过程。我的opengl游戏是c++语言编写的,打包使用的工具是Visual Studio community 2017。

安装程序打包组件

要制作安装包需要用到Microsoft Visual Studio 2017 Installer Projects这个组件。打开工具>扩展和更新,搜索installer projects关键词即可查到该组件,下载安装即可。(安装完毕需要重启Visual Studio工具)

01-安装Installer Projects扩展组件.png

创建setup project

  1. 首先打开c++项目,选中解决方案后右键选择添加>新建项目
    02-添加新建项目.png
  2. 接着在添加新项目窗口中选择其他类型项目,创建Setup Project并输入安装程序名称。
    03-创建setup project.png
  3. 创建成功后初始界面如下,可以看到有三个目录
  • Application Folder:用来存放程序项目的可执行文件、资源(图片、音频、视频等)、各种依赖dll文件。
  • User's Desktop:用来生成桌面快捷方式
  • User's Programs Menu:用来生成开始菜单快捷方式


    setup project初始界面.png
  1. Application Folder
    选中Application Folder右键选择Add>项目输出,接着在弹出窗口中选择主输出,点击确定,查看主输出的SourcePath为项目的可执行文件。
    add-项目输出.png

    选择主输出.png

    主输出为可执行文件.png

    接着通过add>文件(或Folder)选项将程序运行所需要的其他资源文件、dll文件等全部添加到目录中,其中breakout.ico为图标文件,创建桌面快捷方式和菜单快捷方式时使用。
    add-文件.png

    其他文件.png
  2. User's Desktop、User's Programs Menu
    桌面快捷方式和菜单快捷方式创建的方法是相同的,首先选中主输出文件右键创建快捷方式(需要创建两个,分别用于桌面快捷方式和菜单快捷方式),修改快捷方式名称,然后在icon属性中选择已经添加的ico图标,最后分别将创建的两个快捷方式拖入User's Desktop、User's Programs Menu目录。


    创建快捷方式.png

    快捷方式图标.png
  3. 卸载
    我们还需要为安装包提供卸载功能,Application Folder右键添加文件"C:\Windows\System32\msiexec.exe"。


    添加msiexec.png

    选中msiexec.exe文件右键创建快捷方式,命名为uninstall


    uninstall.png

    选中uninstall快捷方式,Arguments属性设置为"/x ProductCode",其中ProductCode的值取自setup project属性中的ProductCode的值。
    arguments属性.png

    productcode.png
  4. 设置完毕,执行build生成解决方案。


    生成的安装包.png

    双击setup.exe执行安装,可以看到桌面、菜单快捷方式均生成,也生成了卸载程序。


    安装后.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,463评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,625评论 25 709
  • 异梦 莫琳一路尾随南少宇来到了一个废置的破旧工厂,殊不知前面的南少宇早已...
    洛錦書阅读 1,833评论 0 1
  • 宝贝,第一个六一过了… 昨天是六一儿童节,当然是哥哥的节日,你还没出生,但我记得你。 六一儿童节,我很疲乏,中午没...
    月满钟秀阅读 3,517评论 2 9
  • 一、简介 PHPExcel是一个处理Excel,CVS文件的开源框架,但不幸的是PHPExcel官方已不再维护了这...
    愤怒的码农啊阅读 4,268评论 0 1