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 ...
随机推荐
- Robolectric 配置
费了些工夫,已配好,按记录留记录 按官网操作http://robolectric.org/getting-started/ 1引包 testCompile "org.robolectric: ...
- JSP中setattribute与setParameter的区别
HttpServletRequest类既有getAttribute()方法,也由getParameter()方法,这两个方法有以下区别: (1)HttpServletRequest类有setAttri ...
- 缺jstl.jar包导致的代码出现异常
java.lang.ClassNotFoundException: javax.servlet.jsp.jstl.core.Config 看报错中的红色部分,意思是缺类异常,再看后面蓝色粗体倾斜部分, ...
- 回忆读windows 核心编程
看<windows 核心编程> 第五版到纤程了,下一章节即将介绍内存体系编程.如果做window平台下的开发,我感觉此书一定要读.记得开始讲解了window的基础,然后讲解内核对象.内核对 ...
- linux上配置网络/安装vsftp服务器
1 准备用yum方式安装,小红帽linux原版不注册无法适用,只好安装centos系统 2 安装好centos系统注意事项: 硬盘得是IDE 配置好网络必须通,eth0的配置文件设置一下,联网启用 c ...
- linux下挂载新硬盘
挂载好新硬盘后输入fdisk -l命令看当前磁盘信息 1.创建新硬盘分区 用fdisk + 路径 进行分区 进入磁盘,对磁盘进行分区 #fdisk /dev/sdb Command (m for h ...
- 使用jQuery.form插件,实现完美的表单异步提交
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs ...
- update select
update中加入select 最常用的update语法是:UPDATE <table_name>SET <column_name1> = <value>, SET ...
- UE简单操作
一:UE恢复默认配置 1.开始--运行-- “%APPDATA%” 回车 . 2. 找到并打开 IDMComp 文件夹.将文件夹“UltraEdit”整个给删除. 3.重 ...
- java有符号无符号的转换
数据处理中常常遇到基本数据类型的操作,java都是有符号的数据,而与下位机通信中常常遇到无符号的比如uint8, uint16,uint32等等 1.为了完成这个功能还专门采用ByteBuffer的方 ...