2

如何将 vs2010 安装项目中的安装文件和必备文件合并在一起?..在我的发布目录中有3个文件:

setup.exe
Setup1.msi
DotNetFX40Client/dotNetFx40_Client_x86_x64.exe

我需要将这些文件放在一个简单的设置文件中。

我尝试使用 Windows 中的 IExpress 工具,但它不起作用,因为“dotNetFx40_Client_x86_x64.exe”在目录中,并且该工具不支持它。

有没有办法让 setup.exe 在根文件夹中查找 .net 框架先决条件,以便我可以使用 IExpress 工具?如果没有,有没有其他方法可以将这些文件合并到一个安装程序中?

提前致谢!!干杯!

4

2 回答 2

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。这种应用程序通常被称为引导程序。dotNetInstaller 就是这样一个引导程序。

让“规则正确”需要一些工作,但它对我来说足够好。

快乐编码。

于 2011-09-28T21:27:19.837 回答
1

使用 NSIS 安装程序 - 你可以在这里找到它,这里有很多教程。以下是您的使用场景采用的语法示例:

(...)
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 文件和完整的自定义安装程序(不能看看你为什么要在你的情况下这样做)。

于 2011-09-28T21:33:30.693 回答