Inno Setup模块化安装
问题描述:
我试图用客户端/数据库方法发布程序。Inno Setup模块化安装
客户端和数据库可以安装在2台不同的计算机上。
我想要做的是一个安装程序,在开始时询问您是要安装客户端,数据库还是两者。
这可能吗?我应该修改哪一部分?
我警告你,我从来没有写过一个Inno Setup的脚本,我总是用ISTools,但如果没有别的办法,我准备让我的手脏了:P
编辑:有点更多信息。 目前我有3个安装程序,一个用于客户端,一个用于DB(这是postgreSQL),另一个用于PDFCreator。 我在做的是将文件复制到一个目录,然后询问用户他想安装什么:[Run]部分,Post Installation。
答
是的,这是可能的。看看CodeDlg.iss示例。它显示如何创建一个对话框来询问要安装哪个版本。在CodeDlg的情况下,它是一个程序的各种版本(光,赞助,支付),但概念是相同的。我之前也做过这个。就我而言,在初始化期间,我读取注册表设置并设置一些变量以选择我安装的版本(客户机或服务器)。我没有在这里,但稍后会得到它并添加到这个答案。
我看了看,它确实是我想达到的。只是一个问题:函数的执行顺序是什么? IE:我在哪里调用初始函数?它是否是一个始终在开始时调用的标准命名函数? – Daniele 2012-04-26 11:33:09
在“Pascal脚本:事件函数”下的帮助文件中,列出了所有事件函数及其用途。例如,InitializeSetup函数被描述为“在安装程序的初始化期间调用,返回False以中止安装程序,否则为True”。例如,我使用该函数在更新中确定是否安装了原始程序,如果没有,则显示消息并退出。 – mirtheil 2012-04-26 14:52:12