如何将vs2010安装项目中的安装文件和必备文件合并在一起? ..在我的发布目录中有3个文件:
setup.exe
Setup1.msi
DotNetFX40Client/dotNetFx40_Client_x86_x64.exe
我需要将这些文件放在一个简单的设置文件中。
我尝试从Windows使用IExpress工具,但它不起作用,因为“dotNetFx40_Client_x86_x64.exe”在目录中,并且该工具不支持它。
有没有办法让setup.exe在根文件夹中查找.net框架先决条件 所以我可以使用IExpress工具??如果没有,还有其他方法将这些文件合并到一个安装程序中吗?
提前致谢!! 干杯!
答案 0 :(得分:1)
我使用dotNetInstaller 1.10作为构建后步骤(原始安装程序,[可选] MSI,并且所有支持包都包含在dotNetInstaller输出可执行文件中)取得了一些成功:
dotNetInstaller使开发人员能够根据处理器架构,用户操作系统类型和语言,以可预测的顺序定义应用程序先决条件并安装这些组件的正确版本,允许用户要从Web下载这些组件,请直接从单个打包设置,本地介质或两者安装这些组件。 dotNetInstaller功能非常丰富,可在所有已知的Windows操作系统上运行,占用空间非常小。
boostrapper [dotNetInstaller]不会替换InstallShield,Wise,Visual Studio安装和部署项目或Wix等工具。目标是创建一个应用程序来帮助用户安装正确的先决条件。大多数真实世界的应用程序需要安装多个组件才能正常工作,包括Windows Service Pack,Internet Explorer,MDAC或.NET Framework。这种应用程序通常称为bootstrappers。 dotNetInstaller就是这样一个引导程序。
要使“规则正确”需要一些工作,但它对我来说足够有效。
快乐的编码。
答案 1 :(得分:1)
使用NSIS安装程序 - 您可能会发现它here,有来自here的教程。以下是您的使用场景采用的语法示例:
(...)
SetOutPath "$INSTDIR\resources"
SetOverwrite off
File "setup.exe"
File "setup1.msi"
File "DotNetFX40Client/dotNetFx40_Client_x86_x64.exe"
(...)
Exec "$INSTDIR\resources\setup.exe"
然后将NSI文件编译成单个文件安装程序,其中包含一个exe文件中的所有材料 - 该exe文件的功能可以介于两者之间,只需解压缩并执行您自己的setup.exe文件和完整的自定义安装程序(在你的情况下,你不明白为什么会这么想。)