inno-setup – 在Inno Setup中传递条件参数
发布时间:2020-12-15 09:36:38 所属栏目:大数据 来源:网络整理
导读:我是Inno Setup的新手,我已经阅读了文档.现在我知道Inno Setup可以接受不同的/自定义参数,并且可以通过Pascal脚本进行处理.但问题是,我不知道如何用Pascal写. 我希望我能得到关于编码的帮助. 我想将/ NOSTART参数传递给我的安装文件,该文件告诉安装程序禁用(
我是Inno Setup的新手,我已经阅读了文档.现在我知道Inno Setup可以接受不同的/自定义参数,并且可以通过Pascal脚本进行处理.但问题是,我不知道如何用Pascal写.
我希望我能得到关于编码的帮助. 我想将/ NOSTART参数传递给我的安装文件,该文件告诉安装程序禁用(取消选中)“启动”上的复选标记,如果未提供/ NOSTART,它将启用(选中)复选标记“启动“ 或者,如果可能的话,不需要启动页面,并通过代码执行所有操作. 解决方法
因为你不能强制修改节条目的标志并且直接访问RunList将是一个非常脏的解决方法,我正在使用这两个
postinstall 条目,而一个没有指定
unchecked 标志,第二个有.因此,第一个条目表示选中的启动复选框,第二个条目表示未选中的启动复选框.使用哪一个是由
Check 参数函数控制的,其中检查命令行尾部是否包含/ NOSTART参数.
另外,我使用了一个更直接的函数来确定命令行尾中是否包含某个参数.它使用 [Setup] AppName=My Program AppVersion=1.5 DefaultDirName={pf}My Program OutputDir=userdocs:Inno Setup Examples Output [Run] Filename: "calc.exe"; Description: "Launch calculator"; Flags: postinstall nowait skipifsilent; Check: LaunchChecked Filename: "calc.exe"; Description: "Launch calculator"; Flags: postinstall nowait skipifsilent unchecked; Check: not LaunchChecked [Code] function CmdLineParamExists(const Value: string): Boolean; var I: Integer; begin Result := False; for I := 1 to ParamCount do if CompareText(ParamStr(I),Value) = 0 then begin Result := True; Exit; end; end; function LaunchChecked: Boolean; begin Result := not CmdLineParamExists('/NOSTART'); end; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- (死亡历险)Delphi7 IdTCPClient1,IdTCPServer1客户端向服
- 18.lua学习笔记:系统库
- Lua入门系列----pil学习笔记之 Type and Values (1)
- ?【分析】1亿篇自媒体文章大数据分析结果告诉你:如何打造“
- 适用于Delphi XE2的SafeMM
- Delphi XE2 之 FireMonkey 入门(4) - 控件天生可做容器
- 不产生候选集的关联规则挖掘算法FP-Tree
- delphi – TCustomAttribute – “预期的常量表达式”编译错
- perl – Devel :: Declare从脚本中删除行
- (hdu step 2.3.1)A + B Problem II(大数加法)