Inno Setup使用技巧
一.关于Inno Setup如何在安装时播放音乐
方法(1):
在脚本编译里的[Code]与[Files]段处添加以下代码:
[Code]
Function mciSendString(lpszCommand: String; lpszReturnString: Integer; cchReturnLength: Integer; hwndCallback: Integer): Integer;
external 'mciSendStringA@winmm.dll stdcall';
procedure InitializeWizard();
var
BGMusicFile, SplashFile: string;
SplashForm: TForm;
SplashFileName: String;
I: Integer;
begin
ExtractTemporaryFile(ExtractFileName(ExpandConstant('{tmp}\music.mp3')));
SplashForm := TForm.create(nil);
with SplashForm do
begin
mciSendString(ExpandConstant('play {tmp}\music.mp3'),0,0,0);
Close;
Free;
end;
end;
[Files]
Source: "C:\music.mp3"; Flags: dontcopy
或者
Source: "C:\mymusic.mp3"; DestDir: "{tmp}"; Flags: dontcopy
代码说明:[Code]中蓝色代码{tmp}与\music.mp3的意思是播放inno setup安装时创建的临时文件夹内的music.mp3音乐文件!
[Files]中C:\music.mp3是你音乐源文件的地址,填自己的音频名称与音频格式。Flags: dontcopy 的意思是在安装时将音乐文件放到Inno Setup所创建的临时文件夹内,并且在完成安装后删除此音乐文件!
二.关于Inno Setup如何修改安装向导内的图片
这个很简单,只需来到Inno Setup程序的根目录找到
WizModernSmallImage.BMP 与 WizModernImage.bmp 这个2个图片文件替换即可。
其中:WizModernImage.bmp为左侧图 如图(1); WizModernSmallImage.BMP则为右上角图标 如图(2)。
说明:WizModernImage.bmp这个图片的大小为:164×314 WizModernSmallImage.BMP这个图片的大小为:55×55 (这2个图片大小 我是按照以前默认大小改的,其它比例大小我没试过,有兴趣的话可以自己试下。)


三:关于Inno Setup如何在安装分割线里加入文字 如图:

只需要加入一个[Messages]段并在此段下输入以下代码:
BeveledLabel=Professional
代码说明:其中绿色部分Professional为自定义文字,可以自行随意输入!
四:关于Inno Setup如何创建多个桌面快捷方式
这个也是很简单只要在[Icons]段加入以下代码:
Name: "{commondesktop}\程序名称1"; Filename: "{app}\InstVise.exe"; Tasks: desktopicon; WorkingDir: "{app}"
Name: "{commondesktop}\程序名称2"; Filename: "{app}\Translator.exe"; Tasks: desktopicon; WorkingDir: "{app}"
说 明:程序名称1 and 程序名称2 就是快捷方式的名字,这个自己定义。InstVise.exe and Translator.exe为快捷方式位于根目录的源执行文件。(还有值得注意的是,如果你一开始选择的是使用向导来创建安装并且在向导快捷方式项目已 经对是否创建桌面快捷方式进行了打勾,那么系统会自动在[Icons]段自动创建主执行文件的快捷方式,此代码为:Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon 这条代码中{#MyAppName}的意思是使用安装文件夹内主执行文件的程序名字,{#MyAppExeName}的意思是安装文件夹内主执行文件的源 执行文件名称。请大家注意的是避免重复建立快捷方式。如果想用这段代码请在后面添加绿色部分;WorkingDir: "{app}"这个是快捷方式的起始位置。在默认情况下没有这部分。可能会导致快捷方式无法打开!)
09.08.26更新增加(有些游戏或者软件的主执行文件不在安装目录内而在安装目录的子文件内,像这种情况的解决方法如下):测试修正中!
-----------------------------------------------------------------------------------------------------------
Name: "{commondesktop}\快捷方式程序名称"; Filename: "{app}\qq.exe"; Tasks: desktopicon; WorkingDir: "{app}"
说明:其中蓝色字部分是要注意的:
1.{app}\qq.exe将进行子目录添加,如:{app}\子文件夹1\子文件夹2\qq.exe
2.{app}将进行对应添加,如:{app}\子文件夹1\子文件夹2\
-----------------------------------------------------------------------------------------------------------
五:关于Inno Setup安装欢迎界面文字与安装向导文字颜色修改
我们只需创建[Code]段在此段添加如下代码:
[Code]
//千万别忘记我噢~~
procedure InitializeWizard();
begin
//改变欢迎页面文字的颜色 (如图)
WizardForm.WelcomeLabel1.Font.Color:= clNavy;
WizardForm.WelcomeLabel2.Font.Color:= clTeal;

//改变其他页面文字的颜色 (如图)
WizardForm.PageNameLabel.Font.Color:= clred;
WizardForm.PageDescriptionLabel.Font.Color:= clBlue;
end;

说明:代码中浅绿色标识的为颜色,可以随意替换目前只发现支持以下颜色!
-----------------------------------------------------------------------------------------------------------
clBlack(黑色),clMaroon(暗红),clGreen(绿色),clOlive(橄榄绿),
clNavy(深蓝),clPurple(紫色),clTeal(深青),clGray(灰色),
clSilver(浅灰),clRed(红色),clLime(浅绿),clYellow(黄色),
clBlue (蓝色),clFuchsia(紫红),clAqua(青绿),clWhite(白色)。
-----------------------------------------------------------------------------------------------------------
六:Inno Setup的打包压缩与分割压缩bin文件的方法
1.分割bin文件,在[setup]段添加:
DiskSpanning=true
DiskSliceSize=2100000000
说明:DiskSliceSize=2100000000 是按字节计算,可随意输入想分割的数。貌似最多不能超过2200000000
2.Inno Setup的压缩格式,默认是按照7Z的压缩算法进行压缩的。还是在[setup]段:
找到:Compression=lzma
说明:其中绿色的lzma为默认压缩格式,也就是7z的默认压缩方式进行压缩。下面在提供一种实用
的压缩方式,也就是7z的极限压缩。
-----------------------------------------------------------------------------------------------------------
Compression=none(此命令为不压缩。)
Compression=lzma/ultra64(此压缩为7z极限压缩算法,耗内存很大时间也会长些。不过压缩率很不错!)
-----------------------------------------------------------------------------------------------------------
Inno Setup使用技巧的更多相关文章
- Inno Setup技巧[界面]添加和自定义左下角标签
原文 http://blog.sina.com.cn/s/blog_5e3cc2f30100cc49.html 本文介绍添加和自定义“左下角标签”的方法. 界面预览: Setup技巧[界面]添加和自定 ...
- Inno Setup技巧[界面]自定义安装向导小图片宽度
原文 blog.sina.com.cn/s/blog_5e3cc2f30100cj7e.html 英文版中安装向导右上角小图片的大小为55×55,汉化版中为55×51.如果图片超过规定的宽度将会被压 ...
- Inno Setup技巧[界面]欢迎页面上添加文字
原文:Inno Setup技巧[界面]欢迎页面上添加文字 本文介绍在"欢迎页面添加文字"的两种方法. 界面预览: Setup技巧[界面]欢迎页面上添加文字" title= ...
- Inno Setup脚本语法大全
Inno Setup脚本语法大全 ResourceShare Bruce 11个月前 (10-28) 6136浏览 0评论 Inno Setup 是什么?Inno Setup 是一个免费的 Win ...
- C/S打包 客户端/windows程序 Inno Setup
之前介绍过InstallShield打包工具,本文再介绍更加方便的打包工具Inno Setup Inno Setup相对来说,比InstallShield更容易使用,不需要去等VS去创建项目,只要提供 ...
- [Tool]Inno Setup创建软件安装程序。
这篇博客将介绍如何使用Inno Setup创建一个软件安装程序. Inno Setup官网:http://www.jrsoftware.org/isinfo.php. 可以下载到最新的Inno Set ...
- inno setup读取注册表遇到的一个坑
一.背景 目前,公司针对PR开发的一个插件需要发布到64位系统上.该插件包括一个prm格式的文件和若干个DLL文件.其中,prm文件需要复制到PR公共插件目录下,DLL需要复制到Windows系统目录 ...
- 一个简单的inno setup模板
一.模板代码 基本功能包括多路径安装.多语言.自定义图标. [Setup] ShowLanguageDialog=yes AppCopyright=Copyright Reserved(C) , 36 ...
- Inno Setup 版本 5.5.3+ 简体中文语言包
; *** Inno Setup 版本 + 简体中文消息 *** [LangOptions] LanguageName=<7B80><4F53><> Languag ...
随机推荐
- EnterpriseLibrary 6.0中DAAB独立数据库配置文件初始化
string path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "database.config"); IC ...
- shell 脚本注意事项
设脚本名为test.sh 第一行应该为#! /bin/bash 1.运行和调试的结果是不一样的 调试 sh -x test.sh 这时在计算两个数的和sum=$[$a+$b]时得到sum=3+4,而 ...
- Eclipse的安装和java环境变量的设置
首先准备工作是要下载好Eclipse和java JDK. 必须要注意的是,Eclipse和java JDK必须下载同一位数的版本,即64位同为64位,32位同为32位.否则在安装完成运行Eclipse ...
- Struts2的值栈和对象栈
ValueStack 如何得到值栈: 如何将对象存入值栈: 让值栈执行表达式来获得值: 在JSP中跳过栈顶元素直接访问第二层: 在JSP中访问值栈对象本身(而不是它们的属性) ActionContex ...
- ifram,framset 互相调用JS
window.parent.frames["Indexbanner3"].aa(); http://blog.163.com/wenchangqing_live/blog/stat ...
- 【转】JavaScript中,{}+{}等于多少?
原文链接:http://www.2ality.com/2012/01/object-plus-object.html 译文链接:http://www.cnblogs.com/ziyunfei/arch ...
- oracle dblink调用函数
select 用户名.函数名@DBLINK名称(参数) from dual; e.g. select newbosid@TEST('1234ECMA') from dual; -- 成功执行 sel ...
- 5.11-5.15javascript制作动态表格
制作动态表格的主要是运用js中表格类的insertRow.insertCell简易添加行和列的代码,不过要注意每行添加的表格是有位置行编号的,每行的编号为rows.length-1,增加的表格内的标签 ...
- javascript之观码说理
前一阶段看到大神在网上贴出的测试个人js理解的代码. 在此我在此借用大神的代码,进行自我复述,大神文章参见:http://www.imooc.com/article/1731 代码1: functio ...
- Windbg符号与源码 《第二篇》
符号文件是一种辅助数据,它包含了对应用程序代码的一些标注信息,这些信息在调试过程中非常有用.如果没有辅助数据,那么能获得的信息就只有应用程序的二进制文件.二进制文件很难调试,因为无法看到代码中的函数名 ...