InstallShield 2010制作程序安装包exe和msi文件区别





如上图所示,InstallShield 2010制作程序安装包会生成exe和msi两个文件,测试了下,两个文件都可以安装应用程序,它们有什么区别呢?

测试一

双击Setup.exe开始安装程序,在Windows任务管理器观察进程变化:



根据观察结果可知:Setup.exe启动Setup.msi来安装应用程序。

测试二

在Redistributables钩选Microsoft .NET Framework 2.0 SP1,选择生成单个msi文件:





编译出错,错误信息如下:

引用内容 引用内容
Your project contains InstallShield prerequisites. A Setup.exe setup launcher is required if you are building a release that includes InstallShield prerequisites. Change your release settings to build Setup.exe, or remove the prerequisites from your project.

根据错误信息可知:单个msi文件不能安装必需项目,这个操作得由exe文件来完成。

最终结论:exe文件用于检测计算机环境以及安装必需项目,然后调用msi文件来安装应用程序,msi文件才是真正的应用程序安装包。

-------------------------------------------------------------------------------------------------

补充说明

如果选择生成单个exe文件,安装应用程序时会看到解压msi的过程,这说明也有生成msi文件,只不过它被包含在exe文件中:



不推荐生成单个exe文件方式,实际测试可能会被安全软件阻止:



评论: 1 | 引用: 0 | 查看次数: 7940
nfcmaxiao[2014-10-26 11:45 PM | | Mail To:nfcmaxiao@163.com | 59.66.234.88 | del | 回复回复]
沙发
大哥 你最近能看到我发的信息,请跟我联系,我有个制作安装包的问题需要你帮忙。多谢了 急!我的邮箱qq 83649332
发表评论
登录后再发表评论!