我有一个可执行文件列表,它们是特定 Windows 程序的安装程序。我是否可以制作一个安装程序,将所有这些安装程序捆绑在一起,以便最终用户可以一次性安装所有程序,而不是单独安装程序?
此外,我所指的程序是开源的,我可以在 GitHub 上访问它们的源代码。如果无法捆绑安装程序,欢迎使用任何替代方法!
如果这些是不同的随机设置,并不真正属于单个产品,那么您甚至可以使用常规批处理文件按顺序安装它们 - 显然。或者如果是供企业部署和使用,则可以使用 SCCM 等普通软件交付系统。
这种顺序方法的中心任务是找到可靠的方法来静默运行设置(或捕获它们并转换为 MSI 文件) - 这可能是一个真正的挑战。如果这就是您正在做的事情 - 本质上只是将一堆不相关的设置分发到 PC,那么也许看看这些答案:
如果您需要将多个先决条件与软件捆绑在一起才能交付给最终用户,那么市场领导者 WiX(免费且开源)、Installshield 和 高级安装程序 都具有以下功能:这。商业工具(后两个)支持工具中的视图,这些视图将自动将标准先决条件捆绑到 setup.exe 启动器中 - 例如 .NET Framework(如今作为标准运行时应通过 Windows Update 下载)使你的设置变得臃肿 - 在我看来)。
高级安装程序允许您将自己的文件定义为安装前或安装后步骤,以包含在最终的
setup.exe.
中检查功能文档。以及建议学习材料列表。 先决条件页面。
WiX提供了Burn工具来制作安装包,其中可以包含MSI文件、EXE文件和MSP(补丁)文件(以及我不知道的任何其他文件)。制作这些捆绑包可能会有点麻烦,但它是免费的。您将获得一个包装器
setup.exe
文件,然后安装所有捆绑的元素。以下是文档中的示例:如何:使用 Burn 安装 .NET Framework。
Installshield(在更昂贵的版本中)提供了名为
Installshield Suite Projects
或 Advanced UI Projects
的功能,您可以在其中对 EXE
文件、MSI
文件、AppX
文件和 other files
进行排序来运行按顺序。您可以在完整的 GUI 模式下实现此功能。 这是屏幕截图。请务必检查您拥有的 Installshield 版本,以防找不到此功能。它可能不包含在您的版本中。对于普通项目中的常规 setup.exe 构建,有一个广泛的 MSI 设置的普通和常用先决条件库。
有些人推荐 dotNetInstaller 安装引导程序。我从来没有用过它来做任何真正的事情。我尝试过一次,发现使用起来有点奇怪。我既不能推荐它,也不能说任何具体的事情。没有任何情报有价值。或许可以尝试一下?
类似答案:
您可以使用
curl
并将每个可执行文件下载到 %temp%
文件夹并执行它们。
我知道这已经很旧了,但也许这可以帮助任何偶然发现这一点的人,尽管他们的目录有些有限: 除了按不特定顺序编写自己的脚本之外,还有三个助手:
尼尼特: https://ninite.com/
替代品可能是巧克力 https://chocolatey.org/
或者小翼 https://github.com/microsoft/winget-cli
也许是一个 powershell 脚本,可以从网站/存储库获取#latest,然后安装它们。
我不鼓励使用 blob,除非你每次都想要相同的版本。不过,这可能主要适用于集中部署的企业,如果每个应用程序都可以单独升级,那么基于 GPO 的安装将是最好的选择。
了解每种方法的优缺点,然后进行相应选择。