有人会写inno setup 漂亮界面界面脚本的吗 500块

3864人阅读
Install Setup(50)
一个比较完整的Inno Setup 安装脚本,增加了对ini文件设置的功能,一个安装包常用的功能都具备了。[Setup]
; 注: AppId的值为单独标识该应用程序。
; 不要为其他安装程序使用相同的AppId值。
; (生成新的GUID,点击 工具|在IDE中生成GUID。)
AppId={{AC5-4324-BD9A-DC3271EEB675}
AppName=ISsample
AppVerName=ISsample 1.0.0.0
AppPublisher=Hkiss
AppPublisherURL=http://zwkufo.
AppSupportURL=http://zwkufo.
AppUpdatesURL=http://zwkufo.
;默认安装目录
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=
VersionInfoDescription=ISsample 汉化增强版
VersionInfoVersion=1.0.0.0
VersionInfoCopyright=Copyright (C)
;制作选择语言
[Languages]
Name: &chs&; MessagesFile: &compiler:Default.isl& ;LicenSeFile :&C:\Example\原始文件\chs\agreement.txt&
Name: &en&; MessagesFile: &compiler:Languages\English.isl&;LicenSeFile :&C:\Example\原始文件\en\agreement.txt&
;用户定制任务
Name: &desktopicon&; Description: &{cm:CreateDesktopIcon}&; GroupDescription: &{cm:AdditionalIcons}&; Flags: unchecked
Name: &quicklaunchicon&; Description: &{cm:CreateQuickLaunchIcon}&; GroupDescription: &{cm:AdditionalIcons}&; Flags: unchecked
Name: &Tasks_1& ; Description:&用户自定义任务1&; Flags: unchecked
Name: &Tasks_2& ; Description:&用户自定义任务2&; Flags: unchecked
;选择了组件才会出现的定制任务
Name: &Tasks_3& ; Description:&用户自定义任务3&;Components: c1 ; Flags: unchecked
;多语言安装环境设置
公共参数Languages 来设置
Source: &C:\Example\原始文件\enfile.txt&; DestDir: &{app}&; Languages: Flags: ignoreversion
Source: &C:\Example\原始文件\chsfile.txt&; DestDir: &{app}&; Languages: Flags: ignoreversion
;用户自定义任务 Tasks
Source: &C:\Example\原始文件\Tasks\tasks_1.txt&; DestDir: &{app}\Tasks&; Flags:Tasks : Tasks_1
Source: &C:\Example\原始文件\Tasks\tasks_2.txt&; DestDir: &{app}\Tasks&; Flags:Tasks :Tasks_2
Source: &C:\Example\原始文件\Tasks\tasks_Components.txt&; DestDir: &{app}\Tasks&; Flags:Tasks :Tasks_2
;用户定义组件安装
Source: &C:\Example\原始文件\Components\Components_1.txt&; DestDir: &{app}\Components&; Flags: Components: a1;
Source: &C:\Example\原始文件\Components\Components_2.txt&; DestDir: &{app}\Components&; Flags: Components: a2;
Source: &C:\Example\原始文件\Components\Components_3.txt&; DestDir: &{app}\Components&; Flags: Components: a3;
Source: &C:\Example\原始文件\Components\Components_4.txt&; DestDir: &{app}\Components&; Flags: Components: a1 a2 a3;
;用户注册自定义Dll文件
regserver 注册 noregerror 不显示错误信息
Source: &C:\Example\原始文件\jmail.dll&; DestDir: &{app}&; Flags: ignoreversion regserver
;添加自述文件
Source: &C:\Example\原始文件\ISsample.txt&; DestDir: &{app}&; Flags: ignoreversion
;添加一个文件到缓存文件夹{Tmp} deleteafterinstall 安装后删除
Source: &C:\Example\原始文件\test.exe&; DestDir: &{tmp}&; Flags: ignoreversion deleteafterinstall
Source: &C:\Example\原始文件\ISsample.chm&; DestDir: &{app}&; Flags: ignoreversion
Source: &C:\Example\原始文件\ISsample.exe&; DestDir: &{app}&; Flags: ignoreversion
Source: &C:\Example\原始文件\ISsample.dll&; DestDir: &{app}&; Flags: ignoreversion
Source: &C:\Example\原始文件\ISsample.ini&; DestDir: &{app}&; Flags: ignoreversion
Source: &C:\Example\原始文件\ISsample.rar&; DestDir: &{app}&; Flags: ignoreversion
Source: &C:\Example\原始文件\ISsample_sys.dll&; DestDir: &{win}\System32&; Flags: ignoreversion
Source: &C:\Example\原始文件\log\*&; DestDir: &{app}\log&; Flags: ignoreversion recursesubdirs createallsubdirs
; 注意: 不要在任何共享系统文件上使用“Flags: ignoreversion”
;安装类型设置
Name: FDescription:&完全安装&; Flags: iscustom
Name: CDescription:&简洁安装&;
Name: C Description:&自定义安装&;
[Components]
Name: c1; Description: &自定义任务3& ; Types: Full
Name: a1; Description: &安装Components_1&; Types: Full Compact C
Name: a2; Description: &安装Components_2&; Types : Full
Name: a3; Description: &安装Components_3&; Types : Full
;开始菜单,桌面快捷方式
Name: &{group}\ISsample&; Filename: &{app}\ISsample.exe&
Name: &{group}\{cm:ProgramOnTheWeb,ISsample}&; Filename: &http://zwkufo.&
Name: &{group}\{cm:UninstallProgram,ISsample}&; Filename: &{uninstallexe}&
Name: &{commondesktop}\ISsample&; Filename: &{app}\ISsample.exe&; Tasks: desktopicon
Name: &{userappdata}\Microsoft\Internet Explorer\Quick Launch\ISsample&; Filename: &{app}\ISsample.exe&; Tasks: quicklaunchicon
;添加一个帮助文挡
Name: {group}\ISsample 1.0.0.0 帮助文档;Filename: {app}\ISsample.chm
;用来在程序安装完成后 在安装程序显示最终对话框之前执行程序 常用与运行主程序 显示自述文件 删除临时文件
Filename: &{app}\ISsample.exe&; Description: &{cm:LaunchProgram,ISsample}&; Flags: nowait postinstall skipifsilent
Filename: &{app}\ISsample.txt&; Description: &查看显示自述文件&; Flags: postinstall skipifsilent shellexec
;更改显示在程序中显示的消息文本
[Messages]
BeveledLabel=HKiss科技
;卸载对话框说明
ConfirmUninstall=您真的想要从电脑中卸载ISsample吗?%n%n按 [是] 则完全删除 %1 以及它的所有组件;%n按 [否]则让软件继续留在您的电脑上.
;定义解压说明
;StatusExtractFiles=解压并复制主程序文件及相关库文件...
;用于在用户系统中创建,修改或删除ini文件健值
Filename: &{app}\cfg.ini&; Section: &Startup Options&; Flags: uninsdeletesection
Filename: &{app}\cfg.ini&; Section: &Startup Options&; Key: &server ip&; String: &127.0.0.1&
Filename: &{app}\cfg.ini&; Section: &Startup Options&; Key: &server port&; String: &8080&
;用于在用户系统中创建,修改或删除注册表健值
[Registry]
Root: HKLM ;SubKey:&Software\ISsample&;ValueType:ValueName:ValueData:10 ;Flags:uninsdeletevalue
;在执行脚本
//全局变量
var MyProgChecked: B
//判断程序是否存在
//初始华程序事件
function InitializeSetup():
//声明变量
var Isstr:
//变量赋值
Isstr := '欢迎';
if RegValueExists(HKEY_LOCAL_MACHINE, 'SOFTWARE\ISsample', 'config') then
MsgBox('已安装过,请先卸载在安装',mbConfirmation, MB_OK);
//MsgBox('无值',mbConfirmation, MB_OK);
//下面是个麻烦的 条件语句 end else 注意
//if MsgBox(Isstr, mbConfirmation, MB_OKCANCEL) = IDOK then
// isbl :=
// MsgBox('执行了', mbConfirmation, MB_OK);
//end else
// isbl :=
//MsgBox('执行了', mbConfirmation, MB_OK);
Result := I
procedure CurStepChanged(CurStep: TSetupStep);
var Isstr :
if CurStep=ssInstall then
//实际安装前调用
//MsgBox('CurStepChanged:实际安装前调用', mbConfirmation, MB_OKCANCEL);
//安装完成后调用
if CurStep=ssPostInstall then
Isstr := ExpandConstant('{tmp}\tmp.rar');
if FileExists(Isstr) then
MsgBox('文件存在',mbConfirmation, MB_OK);
MsgBox('文件不存在',mbConfirmation, MB_OK);
// MsgBox('CurStepChanged:实际安装后调用', mbConfirmation, MB_OKCANCEL);
//下一步 按钮按钮 事件
function NextButtonClick(CurPageID: Integer): B
var ResultCode: I
var IsSetup : B
IsSetup :=
case CurPageID of
wpSelectDir:
MsgBox('NextButtonClick:' #13#13 'You selected: ''' + WizardDirValue + '''.', mbInformation, MB_OK);
//WizardDirValue路径
wpSelectProgramGroup:
MsgBox('NextButtonClick:' #13#13 'You selected: ''' + WizardGroupValue + '''.', mbInformation, MB_OK); //开始菜单名
if not RegValueExists(HKEY_LOCAL_MACHINE, 'SOFTWARE\Test', 'config') then
if MsgBox('程序执行需要Test.ext,是否安装!', mbConfirmation, MB_YESNO) = idYes then begin
ExtractTemporaryFile('test.exe');
if not Exec(ExpandConstant('{tmp}\test.exe'), '', '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode) then
MsgBox('Test.exe出错:' #13#13 ' ' + SysErrorMessage(ResultCode) + '.', mbError, MB_OK);
end else begin
IsSetup :=
BringToFrontAndRestore();
Result := IsS
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:9903036次
积分:111898
积分:111898
排名:第7名
原创:1019篇
转载:3082篇
评论:1496条
(2)(6)(2)(4)(10)(2)(3)(13)(13)(4)(9)(62)(16)(8)(23)(9)(37)(73)(34)(31)(120)(128)(183)(23)(69)(75)(1)(171)(33)(148)(168)(145)(27)(144)(139)(207)(61)(59)(10)(10)(32)(2)(7)(34)(24)(9)(39)(25)(32)(46)(20)(44)(8)(21)(43)(49)(100)(113)(136)(35)(55)(15)(29)(41)(15)(50)(17)(20)(182)(206)(43)(27)(19)(17)(13)(1)(40)(5)(3)(4)(21)(71)(73)(19)(2)(2)(1)(1)(1)(6)(3)
(window.slotbydup = window.slotbydup || []).push({
id: '4740881',
container: s,
size: '200,200',
display: 'inlay-fix'exe安装文件制作(Inno Setup制作Setup.exe)
来源:博客园
本文主要记录使用Inno Setup制作setup.exe安装文件过程中遇到的问题和解决方案。
1.Inno Setup 基本使用请参考:

2.安装时提示需要关闭以下应用程序:Microsoft Visual Studio 2010,Microsoft (R) Visual C++ Package Server
出现这个提示的原因:用VS2010编译出来的共享库或者插件(如果是exe,选择静态库不会出现这种情况的,Activex是不能选择静态库的)在其他机器上运行,需要复制mfc100.dll,msvcr100.dll等dll文件到{sys},如果有些机器上已经有这些文件,而且还在占用着,就会出现这个提示。即使在安装文件中加入了限制条件:如果存在不复制。

 
一开始觉得无所谓,出现就出现吧,又不影响安装。后来发现在有的机器上如果选择了“自动关闭该应用程序”,我自己程序不能用了。必须得解决啊,就开始研究InnoSetup的用法,发现没有跟这个问题相关的属性和用法。最后想到了批处理,不用Innosetup的脚本直接复制这些dll文件到{sys}中,通过bat命令。 希望有遇到类似问题的童鞋可以找到一种解决方法.如果有人知道其他方法,可以留言相互交流。
3.Inno Setup调用bat文件.
在 [Files] 段里加上你自己的批处理文件,比如:

Source: "copy.bat"; DestDir: "{app}"; Flags: ignoreversion

在 [Run] 段里加上安装后的运行命令,比如:

Filename: "{app}\copy.bat"; Flags: nowait  

4.bat脚本命令的编写
需要判断系统是32或64位

@echo off
@title 判断是否需要复制mfc100.dll等

if exist C:\Windows\SysWOW64 (

echo "存在C:\Windows\SysWOW64"

if exist C:\Windows\SysWOW64\mfc100.dll (

echo "C:\Windows\SysWOW64\mfc100.dll已存在" 
)else (
copy mfc100.dll C:\Windows\SysWOW64\mfc100.dll

)

) else (

if exist C:\Windows\System32\mfc100.dll (

echo "C:\Windows\System32\mfc100.dll已存在" 
)else (
copy mfc100.dll C:\Windows\System32\mfc100.dll

)

)

免责声明:本站部分内容、图片、文字、视频等来自于互联网,仅供大家学习与交流。相关内容如涉嫌侵犯您的知识产权或其他合法权益,请向本站发送有效通知,我们会及时处理。反馈邮箱&&&&。
学生服务号
在线咨询,奖学金返现,名师点评,等你来互动之前的安装程序默认语言为英文,现在我们需要将它变成中文,由于InnoSetup安装包中默认没有带中文语言文件,我们需要下载一个先:
到,下载ChineseSimplified.isl文件,并把它放到InnoSetup安装目录中的Languages子目录中:
在之前的安装脚本文件加入[Languages]段,如下所示:
AppName=MySetup
AppVersion=1.0.0.0
DefaultDirName={pf}\MySetup
[Languages]
Name: &chs&; MessagesFile: &compiler:Languages\ChineseSimplified.isl&
其中Name指定了语言在脚本中的引用名称,此处为&chs&,代表简体中文,而MessageFile则指定了语言文件路径,指向则刚我们下载的ChineseSimplified.isl。compiler:则是脚本支持的常量,自动指向InnoSetup的安装路径,所以“compiler:Languages\ChineseSimplified.isl”会被InnoSeutp的编译器解释为引用InnoSeutp安装目录的Languages子目录中的ChineseSimplified.isl语言文件。
现在重新点击运行按钮或按F9键运行,如下图所示:
如果要同时支持英文和简体中文,只要加入英语的语言文件即可:
AppName=MySetup
AppVersion=1.0.0.0
DefaultDirName={pf}\MySetup
[Languages]
Name: &eng&; MessagesFile: &compiler:default.isl&
Name: &chs&; MessagesFile: &compiler:Languages\ChineseSimplified.isl&
注意,加入的&eng&语言文件路径直接在compiler:目录,即InnoSetup的安装路径下,并且语言文件的名字为default.isl,因为它是InnoSetup默认支持的安装语言。
现在按F9或点击运行按钮运行,则会出现语言选择界面:
默认会自动根据当前Windows系统的语言选择合适的语言,没有匹配的则会使用英文。
本文已收录于以下专栏:
相关文章推荐
官方下载:/download/radstudio/10.2/delphicbuilder10_2_1.iso
关注公众号
在公众号里回复“”秘密“”两个字
http://task.csdn.net/m/task/home?task_id=398 领取奖励
提示:根据公众号里的自动回复,完成...
Embarcadero.Delphi.10.1.Berlin.Update1.v24.0..Lite.v13.2
--------------------------------...
1.总结一下首先Hibernate的生命周期Configuration SessionFactorySessionTransaction             &#16...
我们编写的程序经常需要在安装的时候将它安装成服务。使用Inno Setup如何实现呢?一下是我实现的相关代码。希望对大家有所帮助。
{*************加入服务部分*****...
下载:/file/9130422
他的最新文章
讲师:王哲涵
讲师:王渊命
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)扫码下载APP
随时选购服务
需求发布后1小时内收到服务商响应每个需求平均有10个服务商参与95%以上的需求得到了圆满解决所有需求不向雇主收取任何佣金双11电商狂欢 爆款服务超乎你想像
写Inno setup的安装包脚本
写Inno setup的安装包脚本
雇主预算:¥200.00
已收到 12 个服务商的文案稿件
有相似问题想解决?专业顾问来帮助您
通过猪八戒网实名认证,保证身份真实可靠
完成手机认证,保证能随时联系到服务商
该需求下的优秀交稿
TA的交稿:
专业Inno&Setup安装脚本制作,请加QQ:990080
TA的交稿:
非inno&&是用nsis打包&&QQ&
TA的交稿:
TA的交稿:
专业安装包制作,Q
交易成功的需求
软件插件开发相关需求}

我要回帖

更多关于 inno setup 欢迎界面 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信