InnoSetup详解中文资料Word格式.docx

上传人:b****2 文档编号:1143052 上传时间:2023-04-30 格式:DOCX 页数:127 大小:83.85KB
下载 相关 举报
InnoSetup详解中文资料Word格式.docx_第1页
第1页 / 共127页
InnoSetup详解中文资料Word格式.docx_第2页
第2页 / 共127页
InnoSetup详解中文资料Word格式.docx_第3页
第3页 / 共127页
InnoSetup详解中文资料Word格式.docx_第4页
第4页 / 共127页
InnoSetup详解中文资料Word格式.docx_第5页
第5页 / 共127页
InnoSetup详解中文资料Word格式.docx_第6页
第6页 / 共127页
InnoSetup详解中文资料Word格式.docx_第7页
第7页 / 共127页
InnoSetup详解中文资料Word格式.docx_第8页
第8页 / 共127页
InnoSetup详解中文资料Word格式.docx_第9页
第9页 / 共127页
InnoSetup详解中文资料Word格式.docx_第10页
第10页 / 共127页
InnoSetup详解中文资料Word格式.docx_第11页
第11页 / 共127页
InnoSetup详解中文资料Word格式.docx_第12页
第12页 / 共127页
InnoSetup详解中文资料Word格式.docx_第13页
第13页 / 共127页
InnoSetup详解中文资料Word格式.docx_第14页
第14页 / 共127页
InnoSetup详解中文资料Word格式.docx_第15页
第15页 / 共127页
InnoSetup详解中文资料Word格式.docx_第16页
第16页 / 共127页
InnoSetup详解中文资料Word格式.docx_第17页
第17页 / 共127页
InnoSetup详解中文资料Word格式.docx_第18页
第18页 / 共127页
InnoSetup详解中文资料Word格式.docx_第19页
第19页 / 共127页
InnoSetup详解中文资料Word格式.docx_第20页
第20页 / 共127页
亲,该文档总共127页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

InnoSetup详解中文资料Word格式.docx

《InnoSetup详解中文资料Word格式.docx》由会员分享,可在线阅读,更多相关《InnoSetup详解中文资料Word格式.docx(127页珍藏版)》请在冰点文库上搜索。

InnoSetup详解中文资料Word格式.docx

脚本控制着安装程序的所有方面。

由它指定哪些文件将被安装到什么地方,在哪里创建快捷方式,且被命名为什么。

脚本文件一般可以用安装程序编译器程序内置的编辑器进行编辑。

在你编写完脚本后,下一个最终步骤就是选择安装程序编译器中的“编译”。

创建完成后,就可以运行根据你脚本编译的安装程序了。

按默认,这个安装程序创建在包含脚本文件目录下的名为“输出”目录中。

如果你想看看它是怎样工作的,启动安装程序编译器,单击“文件|打开”,并选择位于InnoSetup安装目录下的Examples子目录中的一个脚本文件。

(你也可以将这些示例脚本作为你自己编写脚本的模板。

Innosetup脚本示范(注释)

[Setup]

;

程序名

AppName=ISsample

版本号

AppVerName=ISsample1.0.0.0

发布者名

AppPublisher=Hkiss

相关连接

AppPublisherURL=

AppSupportURL=

AppUpdatesURL=

默认安装目录

DefaultDirName={pf}\ISsample

默认开始菜单名

DefaultGroupName=ISsample

是否打开->

可选安装开始菜单项

AllowNoIcons=yes

安装协议

LicenseFile=C:

\Example\原始文件\agreement.txt

安装前查看的文本文件

InfoBeforeFile=C:

\Example\原始文件\Setup_New.txt

安装后查看文本文件

InfoAfterFile=C:

\Example\原始文件\Setup_Old.txt

输出文件夹

OutputDir=C:

\Example\InnoSetup\out

输出文件名

OutputBaseFilename=setup

安装图标

SetupIconFile=C:

\Example\原始文件\title.ico

安装需要输入密码

Password=123

Encryption=yes

压缩相关

Compression=lzma

SolidCompression=yes

可以让用户忽略选择语言相关

ShowLanguageDialog=yes

备注版本信息

VersionInfoCompany=HTTP:

//www.Hkiss.COM

VersionInfoDescription=ISsample汉化增强版

VersionInfoVersion=1.0.0.0

VersionInfoCopyright=Copyright(C)2007-2008Hkiss

制作选择语言

[Languages]

Name:

"

chs"

MessagesFile:

compiler:

Default.isl"

;

LicenSeFile:

"

C:

\Example\原始文件\chs\agreement.txt"

en"

Languages\English.isl"

\Example\原始文件\en\agreement.txt"

用户定制任务

[Tasks]

desktopicon"

Description:

{cm:

CreateDesktopIcon}"

GroupDescription:

AdditionalIcons}"

Flags:

unchecked

quicklaunchicon"

CreateQuickLaunchIcon}"

Tasks_1"

用户自定义任务1"

Tasks_2"

用户自定义任务2"

选择了组件才会出现的定制任务

Tasks_3"

用户自定义任务3"

Components:

c1;

文件安装

[Files]

多语言安装环境设置公共参数Languages来设置

Source:

\Example\原始文件\enfile.txt"

DestDir:

{app}"

Languages:

en;

ignoreversion

\Example\原始文件\chsfile.txt"

chs;

用户自定义任务Tasks

\Example\原始文件\Tasks\tasks_1.txt"

{app}\Tasks"

ignoreversion;

Tasks:

Tasks_1

\Example\原始文件\Tasks\tasks_2.txt"

Tasks_2

\Example\原始文件\Tasks\tasks_Components.txt"

用户定义组件安装

\Example\原始文件\Components\Components_1.txt"

{app}\Components"

Components:

a1;

\Example\原始文件\Components\Components_2.txt"

a2;

\Example\原始文件\Components\Components_3.txt"

a3;

\Example\原始文件\Components\Components_4.txt"

a1a2a3;

用户注册自定义Dll文件regserver注册noregerror不显示错误信息

\Example\原始文件\jmail.dll"

ignoreversionregserver

添加自述文件

\Example\原始文件\ISsample.txt"

添加一个文件到缓存文件夹{Tmp}deleteafterinstall安装后删除

\Example\原始文件\test.exe"

{tmp}"

ignoreversiondeleteafterinstall

\Example\原始文件\ISsample.chm"

\Example\原始文件\ISsample.exe"

\Example\原始文件\ISsample.dll"

\Example\原始文件\ISsample.ini"

\Example\原始文件\ISsample.rar"

\Example\原始文件\ISsample_sys.dll"

{win}\System32"

\Example\原始文件\log\*"

{app}\log"

ignoreversionrecursesubdirscreateallsubdirs

注意:

不要在任何共享系统文件上使用“Flags:

ignoreversion”

安装类型设置

[Types]

Full;

Description:

完全安装"

iscustom

Compact;

简洁安装"

Custom;

自定义安装"

组件安装

[Components]

c1;

自定义任务3"

Types:

Full

安装Components_1"

FullCompactCustom;

安装Components_2"

Types:

FullCompact

安装Components_3"

开始菜单,桌面快捷方式

[Icons]

{group}\ISsample"

Filename:

{app}\ISsample.exe"

{group}\{cm:

ProgramOnTheWeb,ISsample}"

UninstallProgram,ISsample}"

{uninstallexe}"

{commondesktop}\ISsample"

Tasks:

desktopicon

{userappdata}\Microsoft\InternetExplorer\QuickLaunch\ISsample"

quicklaunchicon

添加一个帮助文挡

{group}\ISsample1.0.0.0帮助文档;

Filename:

{app}\ISsample.chm

用来在程序安装完成后在安装程序显示最终对话框之前执行程序常用与运行主程序显示自述文件删除临时文件

[Run]

LaunchProgram,ISsample}"

nowaitpostinstallskipifsilent

{app}\ISsample.txt"

查看显示自述文件"

postinstallskipifsilentshellexec

更改显示在程序中显示的消息文本

[Messages]

BeveledLabel=HKiss科技

卸载对话框说明

ConfirmUninstall=您真的想要从电脑中卸载ISsample吗?

%n%n按[是]则完全删除%1以及它的所有组件;

%n按[否]则让软件继续留在您的电脑上.

定义解压说明

StatusExtractFiles=解压并复制主程序文件及相关库文件...

用与在用户系统中创建,修改或删除注册表健值

[Registry]

Root:

HKLM;

SubKey:

Software\ISsample"

ValueType:

dword;

ValueName:

config;

ValueData:

10;

Flags:

uninsdeletevalue

在执行脚本

注意:

下面是code,因为与论坛使用的代码标签重名,改为了c0de,需要改回去。

[c0de]

//全局变量

varMyProgChecked:

Boolean;

//判断程序是否存在

 

//初始华程序事件

functionInitializeSetup():

boolean;

varIsbl:

//声明变量

varIsstr:

string;

begin//开始

Isbl:

=true;

//变量赋值

Isstr:

='

欢迎'

ifRegValueExists(HKEY_LOCAL_MACHINE,'

SOFTWARE\ISsample'

'

config'

)then

begin

MsgBox('

已安装过,请先卸载在安装'

mbConfirmation,MB_OK);

isbl:

=false;

endelse

//MsgBox('

无值'

end;

//下面是个麻烦的条件语句endelse注意

//ifMsgBox(Isstr,mbConfirmation,MB_OKCANCEL)=IDOKthen

//begin

//isbl:

//MsgBox('

执行了'

mbConfirmation,MB_OK);

//endelse

//MsgBox('

//end;

Result:

=Isbl;

//结束

procedureCurStepChanged(CurStep:

TSetupStep);

varIsstr:

string;

ifCurStep=ssInstallthen//实际安装前调用

CurStepChanged:

实际安装前调用'

mbConfirmation,MB_OKCANCEL);

//安装完成后调用

ifCurStep=ssPostInstallthen

Isstr:

=ExpandConstant('

{tmp}\tmp.rar'

);

//ifFileExists(Isstr)then

//begin

文件存在'

//endelse

文件不存在'

//end;

//MsgBox('

实际安装后调用'

//下一步按钮按钮事件

functionNextButtonClick(CurPageID:

Integer):

varResultCode:

Integer;

varIsSetup:

IsSetup:

=true;

caseCurPageIDof

wpSelectDir:

NextButtonClick:

'

#13#13'

Youselected:

'

+WizardDirValue+'

.'

mbInformation,MB_OK);

//WizardDirValue路径

wpSelectProgramGroup:

+WizardGroupValue+'

//开始菜单名

wpReady:

begin

ifnotRegValueExists(HKEY_LOCAL_MACHINE,'

SOFTWARE\Test'

)thenbegin

ifMsgBox('

程序执行需要Test.ext,是否安装!

mbConfirmation,MB_YESNO)=idYesthenbegin

ExtractTemporaryFile('

test.exe'

ifnotExec(ExpandConstant('

{tmp}\test.exe'

),'

SW_SHOWNORMAL,ewWaitUntilTerminated,ResultCode)then

Test.exe出错:

+SysErrorMessage(ResultCode)+'

mbError,MB_OK);

endelsebegin

IsSetup:

=false;

end;

BringToFrontAndRestore();

end;

=IsSetup;

三.脚本格式概述

InnoSetup脚本大致上分成若干的段,各段掌管不同的功能。

每个段控制安装程序部分的某个不同方面。

每个段用包含在中括号“[]”中的段名开始,每个段里面是一些相关的条目。

其中有两种不同主要类型的段:

有些就象[Setup]段,条目包含指令名和值(格式为Directive=Value),还有一些就象[Files]段,条目被参数分隔。

这里是一个例子:

AppName=MyProgram

MYPROG.EXE"

注意,在脚本中指定多个相同名字的段是合法的。

你可以通过在行起始位置加个分号“;

”在脚本中写入“注释”(编译时被编译时忽略)。

例如:

这是一条注释,放在这里只是要提醒我自己...

支持AC-like#include指令,从个别文件放入行到#include指令位置的脚本。

语法是:

#include"

filename.txt"

如果文件名中未提供完整的路径,编译将在包含#include指令的同一目录中查找。

文件名用“compiler:

”作为前缀的场合中,在编译器目录中查找文件。

四、段中参数

所有脚本中的段,除[Setup]、[Messages]、[CustomMessages]、[LangOptions]和[Code]段之外,包含的行中可有多个各自的参数。

下列是[Files]段中的一个举例:

MYPROG.CHM"

README.TXT"

isreadme

每个参数都由一个名字组成,然后跟随一个冒号,然后是一个值。

除非另外说明,如果参数未指定,将设定为一个默认值。

一行中多个参数用分号隔开,并且可以以任何次序列出。

参数的值如果包含一个用户定义的字符串时,一般来说用双引号("

)包含,例如象文件名。

引号使用不是必需的,但这样做可能会在值中的首位或末位被加入空格、分号和双引号。

在要引用的值中使用一个双引号字符,用两个连续的双引号字符,例如:

This"

contains"

embedded"

quotes"

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2