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 ...
随机推荐
- 小甲鱼python视频第七讲(课后习题)
1.assert的作用. assert用来判断语句的真假,如果为假的话将触发AssertionError错误. 如果为真则继续执行. 2.变量互换(注意顺序) 3.成员资格运算符(in) 4.分数的划 ...
- hdu 5720 Wool
hdu 5720 问题描述 黎明时,Venus为Psyche定下了第二个任务.她要渡过河,收集对岸绵羊身上的金羊毛. 那些绵羊狂野不驯,所以Psyche一直往地上丢树枝来把它们吓走.地上现在有n n ...
- 遇到的check the manual that corresponds to your MySQL server version for the right syntax错误
遇到的check the manual that corresponds to your MySQL server version for the right syntax错误. 结果发现是SQL关键 ...
- wxPython--Python GUI编程参考链接
原文链接http://www.cnblogs.com/coderzh/archive/2008/11/23/1339310.html
- Java实现批量下载《神秘的程序员》漫画
上周看了西乔的博客“西乔的九卦”.<神秘的程序员们>系列漫画感觉很喜欢,很搞笑.这些漫画经常出现在CSDN“程序员”杂志末页的,以前也看过一些. 后来就想下载下来,但是一张一张的点击右键“ ...
- 无向图最小生成树(prim算法)
普里姆算法(Prim算法),图论中的一种算法,可在加权连通图里搜索最小生成树.意即由此算法搜索到的边子集所构成的树中,不但包括了连通图里的所有顶点,且其所有边的权值之和亦为最小.该算法于1930年由捷 ...
- JS JQuery初始化
(function($) {})(jQuery); 这种写法,申明一个匿名函数并立即调用 $(document).ready(function(){}); 文档全部加载完再执行 等同于$(functi ...
- iOS 开发中的CGFloat,CGPoint,CGSize和CGRect
CGGeometry类定义几何元素的结构和操作集合元素的函数 1. 数据类型 CGFloat: 浮点值的基本类型 CGPoint: 表示一个二维坐标系中的点 CGSize: 表示一个矩形的宽度和高度 ...
- Maven 跳过测试命令行参数 skip test
mvn package -Dmaven.test.skip=true
- ASP.NET MVC 4源码分析之如何定位控制器
利用少有的空余时间,详细的浏览了下ASP.NET MVC 4的源代码.照着之前的步伐继续前进(虽然博客园已经存在很多大牛对MVC源码分析的博客,但是从个人出发,还是希望自己能够摸索出这些).首先有一个 ...