Inno Setup:自定义类

Ale*_*ith 3 inno-setup pascalscript

Inno Setup 是否允许在“type”关键字之后创建自己的类?我尝试从 TBitmapImage 继承:

[Code]
type
    TBitmapButton = class(TBitmapImage)
        property OnHoverImage: TAlphaBitmap;
        procedure Hovering(IsHovered: Boolean);
    end;
Run Code Online (Sandbox Code Playgroud)

但编译器在类声明的开头表示“需要标识符”。

And*_*kle 5

我认为对你的问题的简短回答是否定的。根据InnoSetup网站上关于类似问题的帮助主题:

http://news.jrsoftware.org/news/innosetup.code/msg25634.html

它部分说:

RemObjects Pascal 不支持自定义([代码] 创建)类。

所以我认为你不能做你想做的事。上面的讨论线程提到了一个可能的解决方法

您可以定义一个包含所有所需字段的“记录”,以及一个记录类型的“数组”,以创建它们的动态可扩展索引列表。

您不能定义直接附加到这些方法或构造函数/析构函数,但您可以定义执行等效操作的松散过程/函数。

这与您在 ROPS 中获得的自定义类别非常接近。

我不知道这是否足以满足您的需求。

如果您需要研究InnoSetup代码功能,这里有一个很棒的资源:

http://www.jrsoftware.org/newsgroups.php#search