MFC程序打包方法
1. 新建工程
在同一个解决方案下,新建一个Setup工程,工程名为SetupVSR。
(1)在“解决方案资源管理器”中右键,选择【添加】--【新建项目】;
(2)选择【其他项目类型】--【安装和部署】--【Visual Studio Installer】--【安装项目】,然后修改项目名称为”SetupVSR“
2. 设置信息
在“解决方案资源管理器”中,可以看到新生成的解决方案,如下图所示。
(3)选择应用程序和文件,然后右键,【添加】--【文件夹】,在下方生成的文件夹重命名为”VSR“
(4)选中VSR文件夹,然后右键,【添加】--【项目输出】
(5)在弹出的窗口中的【配置】中,选择”Release Win32"
(6)选中VSR文件夹,然后右键,【添加】--【文件】,在弹出的窗口中选择软件运行中使用的文件,然后点击确定。
(7)选中VSR文件夹,然后右键,点击属性菜单,在弹出的属性菜单中,将“AlwaysCreate”设置为“True”。
3. 其他设置
此时采用的是默认的安装,如果还需要其他的设置,如注册表,界面,启动条件等,则需要在“解决方案资源管理器”中的SetupVSR的项目上右键,在弹出的菜单中进行相应的设置。这里不做具体介绍。
4. 生成安装包
点击菜单中的【生成】--【生成SetupVSR】,即可生成安装包。
默认的安装包路径在~/该项目路径/SetupVSR/Release/setup.exe,双击即可安装。
MFC程序打包方法的更多相关文章
- VB程序打包方法之如何在发布安装之后不带源码
很久之前,我发表了一片博客是VB程序如何打包,在那里面我总结了两个方法.有兴趣可以看看我的这篇博客http://blog.csdn.net/lu930124/article/details/88467 ...
- MFC 程序退出方法
基於對話框的: 1.PostQuitMessage(0);2.PostMessage(WM_QUIT,0,0);3.ExitProcess(0);注意使用时先释放分配的内存,以免造成内存泄露4.exi ...
- JAVA程序打包方法-挺好
https://blog.csdn.net/dj0721/article/details/72462688/
- VS C#程序打包覆盖安装不能更新的解决方法
最近写个小程序,打包覆盖安装更新时老是不起作用,还是原来的程序. 在网上四处查找,productcode和ersion都已经更改,removepreviousversions也设置成true了,可就是 ...
- Qt程序打包发布方法(使用官方提供的windeployqt工具)
Qt程序打包发布方法(使用官方提供的windeployqt工具) 转自:http://tieba.baidu.com/p/3730103947?qq-pf-to=pcqq.group Qt 官方开发环 ...
- 将Python程序打包为exe方法
将Python程序打包为exe文件,需要使用到的工具是pyinstaller pyinstaller是一个多平台的Python程序打包为exe的免费工具 安装pyinstaller: 1,在Windo ...
- 以向VS 程序打包集成自动写入注册表功能为例,介绍如何实现自由控制安装过程
最近由于项目部署时需要更灵活的控制程序安装的流程以及自定义安装行为,特意研究了一下VS程序打包,把解决办法和大家分享一下. 以VS2010为例: 这是一个已经设置好最基本的Visual Studio ...
- VS2012程序打包部署详解
VS2012没有自带打包工具,所以要先下载并安装一个打包工具.我采用微软提供的打包工具: InstallShield2015LimitedEdition.下载地址:https://msdn.micr ...
- 他山之石——vs2013 安装与部署及程序打包
C#打包需要这个:InstallShield 2013 Limited Edition for Visual Studio .下载地址: InstallShield 2013 Limited Edi ...
随机推荐
- 阻塞队列 - java基于链表的简单实现
1.阻塞队列的原理 阻塞队列与普通队列的区别在于:阻塞队列为空时,从队列中获取元素的操作将会被阻塞,当队列为满时,往队列里添加元素的操作会被阻塞. 试图从空的阻塞队列中获取元素的线程将会被阻塞,直到其 ...
- LeakCanary 来检查 Android 内存泄漏
LeakCanary 来检查 Android 内存泄漏
- C# 更新控件四部曲,自定义的用户控件无法更新怎么办
用户控件如果在其他的项目被引用,希望更新控件后,所引用的项目同步更新效果,一开始难免失败,特别是更换了控件所在的文件夹. 这个时候,四部曲来解决控件的更新. 1.运行一下控件的项目,使控件生成一下. ...
- 记一次JDK升级带来的连环反应
公司之前有个很久以前的小项目,页面用到了flash. 现在要去掉flash, 前端使用公司自己开发的框架来展示数据, 使用该框架后台要引用一个jar包封装数据传递给前台. 但该框架是jdk1.8编译的 ...
- oracle 根据一个表更新另一个表内容
declarecursor c_col is select * from xtgl_jgmcbm where substr(v_jgbm,0,2)in('41');--v_sjbm in( selec ...
- vue简单的日历
<ul class="date"> <li v-for="(item, index) in list" :key="index&qu ...
- 解构赋值 Destructuring Assignment
解构赋值 Destructuring Assignment ES6中可以通过一定的模式将数组或对象中的值直接赋值给外部变量,称为解构 对象的解构赋值 // 在ES5中,当需要获取一个对象中的变量值的时 ...
- [JsonSchema] 关于接口测试 Json 格式比对核心算法实现 (Java 版)
引言 为什么要自己重新造轮子,而不是采用第三方的JsonSchema方法进行实现存在以下痛点:1.我之前在网上找了很久,没有找到java版直接进行jsonschema生成的方法或直接比较的方法2.ht ...
- 【SHELL】:定时任务删除指定目录
现有一个需求,需要定时删除积累过久的目录,并且部分目录不可删除.在此,我们分析了一下该父目录的命名结构:非连续性数字命名,部分目录中包含a.txt文件.如下图所示: 在此,我们对此可作如下操作,获取该 ...
- MYSQL列表中常用语句代码块
查看数据表是否存在:SHOW TABLES; 显示已经打开的数据库:SELECT DATABASE(); 查看数据表结构:SHOW COLUMNS FROM ***(数据表名): 插入数据:INSER ...