2012-11-20 42 views
5

我去过stackoverflow.com很多次,但这是我第一次在这里发布。我会尽量做到具体和重点。执行多次安装的安装程序

我正在将所有PC光盘转换为数字.iso文件,并且我有几个游戏是多安装光盘。

最近我已经开始使用Inno Setup,到目前为止,我已经成功地将多盘安装整合到单个程序可执行文件中。

我目前正在关注的是战地1942系列。它需要初始安装,多个扩展安装,以及一个主要的补丁,以及需要多个步骤的mod的安装。

我对社区的问题是如何将上述所有文件打包到一个可执行文件中并让它们按顺序安装?如果可以通过Inno完成,我想尝试一下。或者,如果你建议另一个计划,我总是可以花时间去尝试和学习它。

我已经尝试过为此制作一个批处理文件,但它结束了一种笨重,我真的不喜欢它结果的方式。

此外,有没有办法在Inno中插入复选框来选择可执行文件的运行? (这部分帖子并不像上述要求那么重要,如果可能的话,只是一种奖励)。

真的很期待社会对此的回应!

回答

2

在我看来,如果最终的结果应该是完全打补丁的mod安装的版本,你应该建立新的安装程序,将包含完全修补的游戏与mod。 你可以通过简单的方法找出每个补丁,插件,MOD所改变/添加的内容。 安装完每个东西(addon/mod/etc)之后,制作安装文件夹的备份副本并检查注册表项。 然后只是比较文件夹/目录,并过滤掉每个补丁,插件,MOD的特定文件。 最后,您将能够添加每个插件和MOD作为Components(文件和注册表项) - 这将在组件选择向导页面中创建复选框。

最简单的方法: 对于在安装更多信息到底外部安装程序/第三方应用程序在这里找到:http://www.jrsoftware.org/ishelp/index.php?topic=runsection你可以按照

+2

你有没有听过“这是我跳过的那一页”的短语? 该声明现在是100%准确的。我感到非常尴尬,我不知何故设法跳过联机帮助指南的“运行”部分,而几乎阅读了其余的部分。我认为这与脚本的[Setup]或[File]部分有关。 至于整合补丁,许多安装文件使用版本和/或大小检查,并且当您尝试在其中安装一个安装程序时,将无法正确安装。不幸的是我尝试过。 感谢您的快速和专业的回应! – GLiTCH

2

一种方法是只创建一个安装程序安装的,在那里你您现在和安装时的安装程序都按照您现在确定的顺序运行,以便完全安装并修补游戏。

这样,您不必学习每个游戏所具有的每个文件/注册表项或其他设置,以及如果忘记包含某些重要内容的失败风险。

你有什么才能做正确的事情,就是要学习,如果当前安装程序接受它的命令行参数或文本文件自己的配置(许多安装这样做,例如/无声/verysilent命令行参数在背景上运行)。一旦完成,使用脚本的[run]部分启动每个通过命令行或预制文本文件传递参数的安装程序,甚至可以使用[code]命令创建文本文件或命令行参数,部分使用内置的pascal脚本。

如果您的安装程序不接受参数,您甚至可以实现您的目标,将所有文件保存在一个可运行的单个exe文件中,然后在启动时配置每个单独的安装程序。

您的问题过于宽泛,在此包含一个工作示例,但您可以通过研究samples目录中的脚本来找到指导。

至于你的最后一个问题

此外,有没有插入复选框到的Inno选择什么可执行文件运行的方法吗?

您可以使用[run]部分让用户选择在最后运行的内容。

或者您可以使用[任务]部分创建文件/配置的不同sets

最后一句话是检查安装脚本条目的可用标志,例如deleteafterinstall以清除[files]条目中包含的单个安装程序,或者使用[uninstallrun]部分也提供统一的卸载程序。

+1

感谢您的回复! :) 创建安装程序的安装程序正是我需要的。 我还没有机会写新脚本。刚回到家,但我现在正在做这件事。 正如我告诉罗恩,我设法完全跳过在线帮助文​​件的[运行]部分,并感到非常愚蠢的做法。阅读后,我意识到问题的第一部分是不必要的... 您对此复选框的回复很有帮助,非常感谢! 我会尽力完成这件事,如果事情真的发生,我会让你知道。 再次感谢。 – GLiTCH