最近把一个MFC程序进行打包,要能在XP和win7系统上正常安装运行,遇到了好多问题,都一一解决,随笔记下,以备后用。
打包具体流程参考http://www.cnblogs.com/daban/archive/2012/06/27/2565449.html。下面是遇到的一些问题。
1、打包完的程序需要.net framwork 4.0 环境
打开项目属性:
在系统必备中去掉:
2、在其他机器上安装时显示缺少mfc100d.dll
在”应用程序文件夹“中添加mfc100d.dll(在C:\windows\system32 下面)这是会出现一个对话框,点击"是",这是不会吧mfc100d.dll加载进来,但会在“检测到的依赖项”下多一个文件(下图中国的选中项):
上图中的选中项下面还有一个,那是添加另一个dll时加进来的,忘了具体的名字了。
3、最终生成两个文件
那个.exe好像没用,双击那个.msi也能安装,用如下的命令也能安装。msiexec.exe -i setup.msi
4、打包完的程序运行时360拦截说未签名:
还没解决。如果签名,用户还要选择信任此签名?还不是多了一个拦截对话框?具体还没做,只是猜测。
5、自定义安装界面:
右击项目,视图——用户界面,可添加其他界面