我有几个安装脚本,功能几乎相同。我将相同的函数分开以包含带有公共代码的文件,但有时我需要覆盖其中的一些。
不幸的是,最后的override
和Delphi一样没有帮助:
function NextButtonClick(CurPageID: Integer): Boolean; override;
答案 0 :(得分:2)
这是不可能的。有一点是,例如你提到的NextButtonClick
意味着你不会覆盖的事件方法;另一个是Inno Setup Pascal Script不支持方法覆盖。
我能想到的唯一可靠的解决方法是RY(来自DRY),将事件方法与公共代码分开。
答案 1 :(得分:1)
查看ISD specification,这是一种以高度模块化和可重复使用的方式布置自定义向导页面代码的建议方法。
它通常不适用于所有事件功能,但至少可以帮助您处理NextButtonClick
和其他相关的页面事件。
(我实际上有一些代码可以帮助合并其他事件函数,但它还没有真正准备好供公众使用。)