1.安装:

CurStepChanged所对应的全部状态:3种

1.1. CurStep=ssInstall         --是在程序实际安装前(所有配置都准备好了)

    1.2. CurStep=ssPostInstall     --是实际安装完成后

    1.3. CurStep=ssDone--是在一次成功的安装完成后、安装程序终止前(即点击finish按钮后执行

这些状态可以通过InnoSetup自带的过程(一种跟函数差不多的东西)来判断,然后执行一些自定义的动作:

用法如下:

procedure CurStepChanged(CurStep: TSetupStep);

begin
          if (CurStep=ssInstall) then
          begin

//你要执行的代码
          end;

end;

2.卸载:

CurUninstallStep 所对应的所有状态 4种
       2.1. CurStep=usAppMutexCheck    --在卸载前判断是否已经运行了实例

       2.2. CurStep=usUninstall                --卸载前的准备

       2.3. CurStep=usPostUninstall         --卸载完成后,

       2.4. CurStep=usDone                      --卸载完成后,卸载程序终止前,也是点击finish之后执行的

    同理:卸载的时候也有对应的过程来处理

    procedure CurUninstallStepChanged(CurUninstallStep: TUninstallStep);

begin
          if (CurUnintallStep=usInstall) then
          begin

//你要执行的代码
          end;

end;

3.向导:

Innosetup的预定义向导页(就是安装时让我们点下一步的那些页面)

3.1.wpWelcome     --欢迎页面                                               3.8. wpSelectProgramGroup    --选择程序组页面

3.2. wpLicense      --协议页面                                               3.9. wpSelectTasks

3.3. wpPassword   --密码页面                                               3.10. wpReady

3.4. wpInfoBefore                                                              3.11. wpPreparing

3.5. wpUserInfo                                                                 3.12. wpInstalling               --估计是安装中的进度条页面

3.6. wpSelectDir     --选择目录页面                                         3.13. wpInfoAfter

3.7. wpSelectComponents   --选择组件页面                              3.14. wpFinished      --finish页面

而向导页面则对于于:

procedure CurPageChanged(CurPageID: Integer);

begin

if(CurPageID=wpFinished) then

//你要执行的代码

end;

     

     

     

     

     

Innosetup的状态页面和向导页面解释的更多相关文章

  1. NSIS MUI 的内置向导页面

    MUI 的内置向导页面和安装程序有关的向导页面MUI_PAGE_WELCOME 该向导页面显示欢迎信息MUI_PAGE_LICENSE text/rtf_file 该向导页面显示软件授权申明MUI_P ...

  2. angular页面缓存与页面刷新

      angularJS学习笔记:页面缓存与页面刷新 遇到的问题 现在存在这样一个问题,登录前与登录成功后是同一个页面,只不过通过ngIf来控制哪部分显示,图像信息如下: 所以,整体工作不是很难,无非就 ...

  3. JavaScript在A页面判断B页面加载完毕(iframe load)

    今天遇到一个需求,在A页面上判断B页面是否加载完毕(B页面是第三方页面),加载完毕时隐藏loading动画... 而平时我们一般做的事是在B页面上判断B页面是否加载完毕,进行操作. if(docume ...

  4. WinPhone学习笔记(一)——页面导航与页面相关

    最近学一下Windows Phone(接下来简称“WinPhone”)的开发,在很久很久前稍探究一下WinPhone中对一些传感器的开发,那么现在就从头来学学WinPhone的开发.先从WinPhon ...

  5. 构建基于WinRT的WP8.1 App 01:页面导航及页面缓存模式

    本篇博文主要阐述基于Windows Runtime的Windows Phone 应用页面间导航相关知识,主要分为以下几个方面: Window.Frame和Page概览 页面间实现跳转 处理物理后退键 ...

  6. Iframe父页面与子页面之间的调用

    原文:Iframe父页面与子页面之间的调用 Iframe父页面与子页面之间的调用 专业词语解释如下:     Iframe:iframe元素是文档中的文档.     window对象: 浏览器会在其打 ...

  7. echarts图表点击事件之跳转页面和加载页面

    下图显示四个条形图,点击条形图就跳转到其页面,这说明您要判断你点了那个条形图. echarts给了它点击事件 写法,我们只要模仿就行,代码如下: //echarts图表点击跳转 myChart.on( ...

  8. layui type:2 iframe子页面向父页面传值

    需求: 选择子页面表格中的radio或者双击该行,得到的该行数据传到父页面,由父页面渲染. 网上的各种方法都用了,父页面就是获取不到子页面传的值,过了一晚上,睡了一觉,柳暗花明又一村. layui t ...

  9. AppBox v6.0中实现子页面和父页面的复杂交互

    前言 1. AppBox是捐赠开源(获取源代码至少需要捐赠作者 1 元钱),基于的 FineUI(开源版)则是完整开源,网址:http://fineui.codeplex.com/ 2. 你可以通过捐 ...

随机推荐

  1. Java子父类中的构造函数实例化过程

    其实我们发现子类继承父类操作很简单,如果要是去深入的研究下会发现,实例化过程并非是我们看到的那样,我们就以代码举例来说明: 问大家,以下代码执行会输出什么呢? package com.oop; /** ...

  2. JavaOperator小框架制作【精品博客】

    以下是运算小框架的制作过程,以及核心代码,完成(计算,监听,回馈等): package com.demo2.operator; /** * 运算标准接口 * @author Liudeli */ pu ...

  3. FreeNas FTP配置

    FTP服务器与客户端 因为拥有强大WebGUI管理界面,在FreeNAS中配置FTP服务变得非常简单.如果你是第一次接触FTP这一概念,那么首先要明白两个核心的概念. FTP服务器:你可以把它想象成一 ...

  4. LeetCode139:Word Break

    题目: Given a string s and a dictionary of words dict, determine if s can be segmented into a space-se ...

  5. Python try/except/finally等

    Python try/except/finally等   x = 'abc' def fetcher(obj, index): return obj[index] fetcher(x, 4) 输出: ...

  6. json--pyton中obj与json的互转,js中obj与json的互转

    json 解释:json是一种跨平台的通用的数据格式 python中对象(obj)与json之间的相互转换 1.对象(obj)转json格式的字符串 json.dumps(res) res = () ...

  7. 先装VS2008之后,又装了2013,然后启动VS2008提示“Tools Version”有问题?

    这个网上资料一搜很多,我就是按照下面这个链接去解决的,删除 “14.0” 整个键值文件夹之后重启VS2008就好了, 注意:上面第一张图是我在网上找的08和10版本弹出的错误,我自己弹出的是提示14. ...

  8. 如何优化代码中大量的if/else,switch/case?

    前言 随着项目的迭代,代码中存在的分支判断可能会越来越多,当里面涉及到的逻辑比较复杂或者分支数量实在是多的难以维护的时候,我们就要考虑下,有办法能让这些代码变得更优雅吗? 正文 使用枚举 这里我们简单 ...

  9. Restframework 认证authentication 组件实例-1

    1. 创建用户表和 token表 class User(models.Model): user =models.CharField(max_length=) pwd =models.CharField ...

  10. Android之开源项目汇总

    汇总一:http://www.trinea.cn/android/android-open-source-projects-view/ 汇总二:http://blog.csdn.net/liuhaom ...