Inno Setup技巧[实例]添加自定义页面

原文 http://hi.baidu.com/watashi/item/b3dda993459ff8f0291647a0

通过“添加自定义页面”可以丰富安装程序的功能。本文以添加一个页面“选择安装类型”为例,选择标准安装将跳过“选择目标位置”和“选择开始菜单文件夹”两个页面。

在[Code]段添加以下代码:

var
Page: TWizardPage;

RadioButton1, RadioButton2: TRadioButton;
Lbl1, Lbl2: TNewStaticText;

procedure CreateAddonPage;
begin
Page := CreateCustomPage(wpInfoBefore, '选择安装类型', '请根据您的需要选择安装的类型');

RadioButton1 := TRadioButton.Create(Page);
RadioButton1.Left := ScaleX(80);
RadioButton1.Top := ScaleY(40);
RadioButton1.Width := Page.SurfaceWidth;
RadioButton1.Height := ScaleY(17);
RadioButton1.Caption := '标准安装';
RadioButton1.Checked := True;
RadioButton1.Parent := Page.Surface;

Lbl1 := TNewStaticText.Create(Page);
Lbl1.Left := ScaleX(95);
Lbl1.Top := ScaleY(60);
Lbl1.Width := ScaleX(250);
Lbl1.Height := ScaleY(50);
Lbl1.Caption := '按照标准模式安装软件到您的电脑';
Lbl1.Parent := Page.Surface;

RadioButton2 := TRadioButton.Create(Page);
RadioButton2.Left := ScaleX(80);
RadioButton2.Top := RadioButton1.Top + ScaleY(60);
RadioButton2.Width := Page.SurfaceWidth;
RadioButton2.Height := ScaleY(17);
RadioButton2.Caption := '自定义安装';
RadioButton2.Checked := false;
RadioButton2.Parent := Page.Surface;

Lbl2 := TNewStaticText.Create(Page);
Lbl2.Left := ScaleX(95);
Lbl2.Top := Lbl1.Top + ScaleY(60);
Lbl2.Width := ScaleX(250);
Lbl2.Height := ScaleY(50);
Lbl2.Caption := '您可以选择单个安装项,建议经验丰富的用户使用';
Lbl2.Parent := Page.Surface;
end;

procedure InitializeWizard();
begin
CreateAddonPage;

end;

function ShouldSkipPage(PageID: Integer): Boolean;
begin
if (PageID = wpSelectDir) and (RadioButton1.Checked) then
Result := True
else if (PageID = wpSelectProgramGroup) and (RadioButton1.Checked) then
Result := True
end;

 

代码中红色部分表示自定义页面所紧跟的向导页面的CurPageID值,蓝色部分分别表示自定义页面的标题和描述。

 

默认截图:

自定义截图:

时间: 2024-10-23 10:35:14

Inno Setup技巧[实例]添加自定义页面的相关文章

Inno Setup技巧[界面]欢迎页面上添加文字

原文:Inno Setup技巧[界面]欢迎页面上添加文字         本文介绍在"欢迎页面添加文字"的两种方法.   界面预览:   首先可以在[Code]段添加以下代码:   procedure InitializeWizard(); var   LabelDate: Tlabel; begin   WizardForm.WelcomeLabel2.Autosize := true;   LabelDate := Tlabel.Create(WizardForm);   Labe

Inno Setup技巧[界面]自定义安装向导小图片宽度

原文  blog.sina.com.cn/s/blog_5e3cc2f30100cj7e.html 英文版中安装向导右上角小图片的大小为55×55,汉化版中为55×51.如果图片超过规定的宽度将会被压缩.   Setup技巧[界面]自定义安装向导小图片宽度" title="Inno Setup技巧[界面]自定义安装向导小图片宽度"> 想要使该图片伸展开,需要在[Code]段添加以下代码:   procedure InitializeWizard(); begin   W

INNO Setup 使用笔记(来自网络)

[Setup] AppName={#MyAppName} AppVerName={#MyAppVerName} AppPublisher={#MyAppPublisher} AppPublisherURL={#MyAppURL} AppSupportURL={#MyAppURL} AppUpdatesURL={#MyAppURL} DefaultDirName={pf}\My Programee DefaultGroupName={#MyAppName} InfoBeforeFile=D:\In

INNO SETUP数据库的连接与创建

原文:INNO SETUP数据库的连接与创建  说明一下:这块程序的前半部分在INNO SETUP的实例里面就有,而后面如果对数据库进行备份和还原在实例里面没有,在网上也不好找,是本人费了好大劲一句一句试出来的,请大家转摘时注明,以表示对个人劳动的尊重.谢谢! [Code] {--- SQLDMO ---}    //关于SQLDMO的相关知识大家可以去网上搜 const//SQL服务器名称,这个名称在安装SQL时会要求有个服务器名称的输入,所有每台机器上打开SQL服务器时看到的名称都不一样,如

以前编写的inno setup脚本,涵盖了自定义安装界面,调用dll等等应用 (转)

; Script generated by the Inno Setup 脚本向导.   ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!      ; 为1的时候表示定义成试用版本   #define VERSION_TYPE ReadIni('Setup.ini', 'SetupType', 'type', '0')      #if VERSION_TYPE == "2"       

inno setup介绍(转)

使 用 笔 记 1.Inno Setup 是什么?Inno Setup 是一个免费的 Windows 安装程序制作软件.第一次发表是在 1997 年,Inno Setup 今天在功能设置和稳定性上的竞争力可能已经超过一些商业的安装程序制作软件.关键功能: 支持现在所有正在使用的 32 位 Windows 版本: Windows 95,98,2000,Server 2003,XP,Me,NT 4.0 (不需要服务包). 支持创建单个 EXE 格式的安装程序,使你的程序可以很方便地在网络上发表.同时

Inno Setup 网页显示插件 webctrl

原文:Inno Setup 网页显示插件 webctrl ; -- Example.iss -- ; restools ; http://restools.hanzify.org ; 插件名:webctrl.dll ; 插件功能:网络连接检测,创建网页页面. ; 插件大小:9 KB ; V2 增强操作函数,可以同时创建多达 256 个 Web 窗口. ; V2 例子中演示了建立一个小型浏览器以体现该版本中的函数如何使用.比起 V1 重点在于能同时创建多个 Web 窗口. [Setup] AppN

用Inno Setup来解决.NetFramework安装问题

前段时间朋友接了一个项目,具体是开发一个安装在局域网内的软件,这个 软件会定时连接局域网内的服务器来更新本地客户端的一些信息,因为在局域网 内存在着多种不同的Windows版本,从WindowsXP.Windows2003及Windows2008到 Windows7等,这个软件采用VS2008/.Net Framework2.0开发,因为有些系统默认 没有安装.Net Framework2.0,所以在运行时需要确保客户机上已经安装上.Net Framework2.0,于是想到将软件打包. 制作软

C# Winform多屏幕多显示器编程技巧实例

  这篇文章主要介绍了C# Winform多屏幕多显示器编程技巧实例,本文直接给出代码实例,需要的朋友可以参考下 在窗口的中间有一个System.Windows.Forms.PictureBox控件(该控件区域的面积为所在窗口的1/4),当该控件的大部分区域落在其中一台显示器时,在另一台显示器将不显示该控件,(该PictureBox控件将移动到主显示器所在的窗口区域). 实现方法: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 2