MFC编写的应用程序打包问题详解

MFC编写的应用程序打包问题详解

问题1. 操作流程

1.先在要打包的解决方案下建立一个新的安装程序的工程




如下图选择Setup project工程


然后进入view -->File system界面如下图



2. 设置目标工程为主输出




如上图操作得到下面的对话框


将要打包的工程设为主输出(Primary Output),然后将程序要用到的dll文件,图片资源,图标等都放到主文件夹中(Application Folder)中。

注意:Application Folder文件夹中的东西,就是安装过后放在安装目录下的数据,也是程序默认的工作目录。

3.增加快捷方式

为主输出文件(Primary Output....)文件创建快捷方式,并把它放到“桌面文件夹”(Users Desktop)和“开始菜单”(Users program menu)文件夹中。



注意:一定要是先在Application Folder文件夹中创建,然后再剪切到下面两个文件夹中。这样是为了保证其属性值中的Target为Primary Output,如下图:


4.增加卸载方式

在C:\Windows\System32文件夹下找到msiexec.exe应用程序,并加载到Application Folder文件夹下,相应的给它增加快捷方式,并在Agruments中添加ProductCode, 注意前面还要加/x   再将该快捷方式拷到开始菜单的文件夹中。





5.选择Release方式编译即可



问题2.打包时选择Release与Debug会有不同

Release下编译,没有C++内存链(参考: 点击打开链接),从而对于new和delete,就会转化为c中的malloc.c和free.c,所以如果用到了外加库,这两个环境下编译的dll文件,是不同的。比如如果用到了opencv,那么在Debug环境下就应该用含“d”的dll文件,如果在Release环境下就应该用没有“d”的dll文件。所以这两个环境下的环境配置是各自独立的,如果你在Release下运行程序,发现有函数没有实现的错误提示,那么你就应该考虑到这个环境下的库你没有配置,即input项没有写相应的lib文件。

问题3.语言设置



如上图所示,Localization项就是设置你的安装语言,这里要注意的是,如果用在快捷方式上用的都是中文,但是你这里设置的是英文,那么最后你的开始菜单中的中文文件名将无法显示。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值