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. 基于Maven的S2SH(Struts2+Spring+Hibernate)框架搭建

    1. 前言 基于Maven的开发方式开发项目已经成为主流.Maven能很好的对项目的层次及依赖关系进行管理.方便的解决大型项目中复杂的依赖关系.S2SH(Struts2+Spring+Hibernat ...

  2. 关于java的volatile关键字与线程栈的内容以及单例的DCL

    用volatile修饰的变量,线程在每次使用变量的时候,都会读取变量修改后的最新的值.volatile很容易被误用,用来进行原子性操作. package com.guangshan.test; pub ...

  3. Grafana安装及配置

    安装 sudo yum install https://grafanarel.s3.amazonaws.com/builds/grafana-2.1.3-1.x86_64.rpm 启动 sudo se ...

  4. Linux系统下ping命令报错 name or service not know

    问题描述 CentOS,但是当执行ping命令的时候,提示name or service not known 解决方法 1.添加DNS服务器 vi /etc/resolv.conf 进入编辑模式,增加 ...

  5. 百分之 95% 的程序员不知道 Trending 是什么。

    前言如果学习到的知识不成体系,那么遇到问题时就会非常难解决.常有人问你从哪里了解新技术怎么判断其发展趋势的,除了关注 Hacker News 以及庞大的 Awesome 还有没有其它方式?有啊当然是每 ...

  6. requirejs的插件介绍与制作

    本文由作者郑海波授权网易云社区发布. 前言 我这里就不介绍requirejs了, 简而言之: requirejs是支持AMD规范的模块加载器, 事实上它也是AMD的最直接推动者. 现在可供挑选的开源模 ...

  7. FFMpeg的一些基础配置

    一 . CMakeLists.txt文件的使用 1.添加头文件的相对路径 : include_directories(include(这里面就是文件的名字)) 2.设置ffmpeg的库的路径(v7a或 ...

  8. JavaWeb -学生信息管理实践(JDBC+web+三层架构+DBUtil构造思路)

    前言: 1 该程序使用动态web项目 2 该程序使用SQL server需导入对应包( 具体可看前篇----JDBC的使用) 3 三层架构思想: ①表示层 前台:jsp/html等 作为前台与用户交互 ...

  9. Brainteaser-292. Nim Game

    You are playing the following Nim Game with your friend: There is a heap of stones on the table, eac ...

  10. Apache Log4j配置说明

    1.Log4j简介 Log4j是Apache的一个开源项目,它允许开发者以任意间隔输出日志信息.Log4j主要由三大类组件构成: 1)Logger-负责输出日志信息,并能够对日志信息进行分类筛选,即决 ...