问题描述
|
我创建了一个软件包,其中包含以下文件来安装软件包。
安装程序
mySetup.msi(软件包安装程序)
WindowsInstaller31.msi(先决条件1)
NetFramework35.exe(先决条件2)
当用户单击setup.exe时,此软件包将运行并首先检查系统上找不到的必备软件,然后先安装必备软件,然后继续安装实际产品。
我的问题是我想创建单个exe文件,其中将压缩所有上述文件,并且当用户单击该单个exe时,将解压缩所有这些文件,安装将继续。
我想将单个exe而不是这4个文件分发给我的客户端。
有谁能帮助我为我的程序包创建一个自解压exe文件?
解决方法
那里有各种各样的应用程序可以为您做到这一点。
这里有一些:
NullSoft可编写脚本的安装系统
创新设置
IzPack
, 免费的开放源代码项目WIX(Windows Installer XML)最初是Microsoft产品,但现在通过Outercurve Foundation开放源代码-具有此功能,称为Bootstrapper应用程序burn.exe。可以在CodePlex上找到该SDK。
尽管由于XML格式比其他引导程序要处理的要复杂得多,但是由于WIX框架整体的可靠性,我还是选择了引导程序。我没有适合您的任何示例脚本,但是这里有文档:http://wixtoolset.org/documentation/manual/v3/bundle/
Wix作者和Microsoft前雇员Rob Mensching关于Burn的博客:http://robmensching.com/blog/posts/2009/7/14/lets-talk-about-burn。这是显示如何安装dotnet框架的示例:如何:使用Burn安装.NET Framework
这是关于同一问题的另一个线程:使用wix生成可执行文件
, 看看实际安装程序的免费版本