`
qq173684423
  • 浏览: 28091 次
社区版块
存档分类
最新评论

Inno Setup入门(十五)——Inno Setup类参考(1)

 
阅读更多

Inno setup脚本能够支持许多的类,这些类使得安装程序的功能得到很大的加强,通过对这些类的使用,将会创建出许多让人惊奇的安装程序,下面开始类的学习。

创建自定义向导页

自定义向导页需要在InitializeWizard事件函数中创建,通过使用CreateCustomPage函数创建一个空的页面,或者使用CreateInput...Page CreateOutput...Page等函数创建预建的页面,例如CreateInputDirPageCreateInputFilePageCreateOutputProgressPage等函数。当创建好了页面之后,就可以在页面上添加控件了,可以手动创建控件,也可以使用预建页面的特殊函数。大部分的Create...Page函数的第一个参数通常都是Page ID,该参数指定了新创建的页面被放在哪个已存在的页面后面。有几种方法获取一个已经存在页面的Page ID,例如用户创建的页面有一个属性是ID,该属性为一个只读的整型,其值即为页面的ID,内建的向导页有预定的ID,可用的名称如下表:

 

wpWelcome

wpLicense

wpPassword

wpInfoBefore

wpUserInfo

wpSelectDir

wpSelectComponents

wpSelectProgramGroup

wpSelectTasks

wpReady

wpPreparing

wpInstalling

wpInfoAfter

wpFinished

 

 

 

当自定义页面创建完成后,安装程序将会显示,并会像对待预建页面一样处理他们,例如调用所有页面都关联的NextButtonClick ShouldSkipPage事件函数。

CreateCustomPage函数原型如下:

function CreateCustomPage(const AfterID: Integer; const ACaption, ADescription: String): TwizardPage

第一个参数和前面的Page ID是一样的,可以使用上述表中任何一个作为参数,第二个参数Acaption指定页面的标题,该标题将会显示在页面上方,第三个参数则是对该页面的描述。函数的返回值是一个TwizardPage类,根据Inno Setup的帮助文档,该类的原型如下:

TWizardPage = class(TComponent)

  property ID: Integer; read;

  property Caption: String; read write;

  property Description: String; read write;

  property Surface: TNewNotebookPage; read write;

  property SurfaceHeight: Integer; read write;

  property SurfaceWidth: Integer; read write;

  property OnActivate: TWizardPageNotifyEvent; read write;

  property OnBackButtonClick: TWizardPageButtonEvent; read write;

  property OnCancelButtonClick: TWizardPageCancelEvent; read write;

  property OnNextButtonClick: TWizardPageButtonEvent; read write;

  property OnShouldSkipPage: TWizardPageShouldSkipEvent; read write;

end;

TWizardPageNotifyEvent = procedure(Sender: TWizardPage);

TWizardPageButtonEvent = function(Sender: TWizardPage): Boolean;

TWizardPageCancelEvent = procedure(Sender: TWizardPage; var ACancel, AConfirm: Boolean);

TWizardPageShouldSkipEvent = function(Sender: TWizardPage): Boolean;

下面的程序将会创建一个最简单的自定义页面,并显示在欢迎页面后面:

[setup]

AppName=Test

AppVerName=TEST

DefaultDirName="E:\TEST"

AppVersion=1.0

[files]

Source: "F:\desktop\test\ipmsg.exe";Flags:dontcopy

[code]

procedure InitializeWizard();

begin

       CreateCustomPage(wpWelcome, '标题:自定义页面', '描述:这是我的自定义页面');

end;

运行后,当从Welcome页面点击Next按钮后,将会出现下面的页面:

Inno Setup入门(十五)——Inno Setup类参考(1) - Castor - 趁年轻,多折腾~~

 

另外,我们也可是测试一下CreateCustomPage的返回值TwizardPage类的属性。例如下面这个例子将测试一下ID属性和NextButtonClick属性:

 

[code]

var

       myPage:TwizardPage;

       myPageID:Integer;

function NextButtonClick(CurPageID:Integer): Boolean;

begin

    if CurPageID=myPageID then

    begin

        if MsgBox('确定要离开本页面吗?', mbConfirmation, MB_YESNO or MB_DEFBUTTON2) = IDYES then result:=true;

       end

    else

        result:=true;

end;

procedure InitializeWizard();

begin

       myPage:=CreateCustomPage(wpWelcome, '标题:自定义页面', '描述:这是我的自定义页面');

       myPageID:=myPage.ID;

end;

 

       运行该程序,当到达自定义页面并单击Next的后,将会出现如下的确认对话框:

Inno Setup入门(十五)——Inno Setup类参考(1) - Castor - 趁年轻,多折腾~~

 

选择“是”将到下一页,“否”将留在本页。

虽然上面的页面没有任何控件,但是,在成功创建好页面之后,往上面添加各种控件将会变得简单,这就像是把地基打好了之后,盖房子就方便多了。

分享到:
评论

相关推荐

    InnoSetup入门(PDF )

    《InnoSetup入门详解》 InnoSetup是一款广泛使用的安装包制作工具,尤其在Windows平台上,它以其简单易用和高度可定制性深受开发者喜爱。本教程将带你深入理解InnoSetup的基础和高级功能,逐步教你如何制作出专业且...

    Inno Setup入门教程

    #### 十九至二十二、Inno Setup类参考 - **基础知识**:深入学习Inno Setup提供的类库及其使用方法。 - **应用场景**: - 实现高级功能。 - 自定义界面。 - 调用API函数。 通过以上知识点的学习,开发者可以熟练...

    innosetup界面美化工具.zip

    innosetup安装界面美化: 解压压缩包中的 Inno Setup 5.5.zip,运行Inno Setup 5.5\Inno Setup 5\Compil32.exe,右上角可以改变语言。 打开build.iss文件,一些自定义字段请按需修改,点击Inno Setup工具栏中的 ...

    【innoSetup反向打包】innoextract

    Inno Setup是一个为Microsoft Windows应用程序创建安装程序的工具。innoextract允许在非Windows系统下提取此类安装程序,而无需使用wine运行实际的安装程序。innoextract 目前支持由 Inno Setup 1.2.10 到 6.2.1 ...

    Inno Setup 6.2.1以及中文语言包

    "innosetup-6.2.1.exe"是Inno Setup 6.2.1的主要安装程序文件,用户可以通过运行这个文件来安装或升级Inno Setup的开发环境。这个执行文件可能包含所有必要的组件,如编译器、脚本编辑器和帮助文档,使得用户可以在...

    inno setup中文帮助文档

    1. **Inno Setup概述**:解释Inno Setup的基本概念,它的功能特性,以及与其它安装制作工具的区别。这通常会涉及到它支持自定义安装路径、创建桌面快捷方式、注册文件、安装程序的多语言支持等功能。 2. **安装脚本...

    InnoSetup中文帮助

    ### InnoSetup中文帮助知识点详解 #### 一、InnoSetup简介 - **定义**:InnoSetup是一款专为Windows操作系统设计的免费安装程序制作工具。首次发布于1997年,经过多年的持续更新与优化,其在功能性与稳定性方面已...

    Inno Setup 中文教程

    1. **安装与界面**:首先,你需要下载Inno Setup的安装包,完成安装后,启动Inno Setup编译器。它的界面简洁直观,包含“脚本编辑器”、“预览”和“编译”三个主要部分。 2. **项目设置**:在Inno Setup中,你可以...

    InnoSetup6.0.3安装包与中文包.rar

    它的最新版本是6.0.3,这个压缩包“InnoSetup6.0.3安装包与中文包.rar”包含了该版本的安装程序以及中文语言包,使得国内用户能够方便地使用中文界面进行安装脚本的编写和安装程序的创建。 首先,我们来了解一下...

    Inno Setup + 语言包

    Inno Setup是一款流行的安装制作工具,它被广泛用于创建Windows应用程序的安装程序。这款软件以其简单易用的界面和强大的功能而闻名。Inno Setup支持创建单文件安装包,自解压程序,以及多语言安装界面,使得开发者...

    innosetup 仿有道云安装包

    【标题】"innosetup 仿有道云安装包" 涉及的主要知识点是使用Inno Setup创建类似有道云笔记的安装程序。Inno Setup是一款免费且开源的安装制作工具,常用于创建Windows应用程序的安装包,它允许开发者自定义安装界面...

    Inno Setup 5.zip

    1. **安装Inno Setup**:首先,你需要下载并安装Inno Setup 5的编译器,然后就可以开始创建安装脚本了。 2. **编写安装脚本**:使用集成的脚本编辑器,根据项目需求编写安装脚本,包括安装目录、文件列表、程序图标...

    innosetup安装界面美化.zip

    1. 尺寸匹配:确保所有图片的尺寸与InnoSetup要求的尺寸一致,否则可能造成界面显示不完整或错位。 2. 脚本同步:修改图片后,务必更新脚本文件中的相关路径和尺寸信息,确保两者匹配。 3. 兼容性测试:在不同的操作...

    inno setup 增强版

    1. **脚本编译**:Inno Setup使用基于文本的剧本语言,允许用户自定义安装过程的每个细节,如文件复制、注册表操作、快捷方式创建等。通过编写简单的脚本,可以实现复杂的安装逻辑。 2. **多语言支持**:Inno Setup...

    Inno Setup 6.1.0+ Chinese-Simplified-Translation 中文包

    1. **编写脚本**:Inno Setup使用基于Pascal的脚本语言,开发者可以通过编写脚本来定义安装过程中的各种行为,如安装路径、文件复制、注册表操作等。 2. **编译脚本**:使用Inno Setup的编译器将脚本转换为可执行的...

    Inno Setup 6.1.0中文语言包

    Inno Setup是一款流行的安装制作工具,它被广泛用于创建Windows应用程序的安装程序。这款软件以其简单易用的脚本语法和强大的功能集而受到开发者们的青睐。标题中的"Inno Setup 6.1.0中文语言包"指的是Inno Setup的...

    innosetup安装包+中文语言包

    InnoSetup是一款流行的安装制作工具,它被广泛用于创建Windows应用程序的安装程序。这款软件以其简单易用的脚本语法和强大的功能集而受到开发者们的青睐。标题中的"innosetup安装包+中文语言包"表明我们拥有Inno...

    Inno工具,含InnoSetup和ISTool汉化可视化工具(汉化)

    1. **脚本驱动**:InnoSetup使用基于 Pascal 的简单脚本来定义安装过程,包括文件复制、注册表操作、启动菜单项创建等,这使得定制安装过程变得灵活且易于理解。 2. **多语言支持**:InnoSetup允许创建多语言安装包...

    innosetup脚本范例

    1. **InnoSetup脚本基础** InnoSetup的脚本文件扩展名为`.iss`,它包含了安装程序的所有配置信息,如安装目录、文件列表、许可协议、安装类型等。在提供的`client.iss`、`zkClient.iss`和`ibzkClient.iss`中,我们...

    inno setup改变环境变量脚本

    五、Inno Setup脚本资源 为了帮助开发者更好地理解和使用Inno Setup脚本,可以参考Inno Setup的官方文档和在线社区资源。例如,Inno Setup的源代码包含了大量的示例脚本,可以作为学习和调试的参考资料。 六、总结 ...

Global site tag (gtag.js) - Google Analytics