Ale*_*lex 2 inno-setup pascalscript
我正在为我的应用程序编写一个简单的Inno Setup脚本。我做了我想要的所有东西,但是我阻止了某些事情。
我的应用程序有两种模式,用户在安装开始时选择“计算机”和“客户端”。如果选择了客户端模式,则应用程序必须从Windows启动。另外,我的应用程序可以同时安装在Windows版本(32位和64位)上,因此注册表项的路径不同。
为了使它从Windows开始,我在Inno安装脚本的末尾添加了它:
[Registry]
Check: IsWin64; Root: HKCU; Subkey: "Software\Microsoft\Windows\CurrentVersion\Run"; ValueType: string; Permissions: users-full; ValueName: "MyApp"; ValueData: "{app}\AutoexecX86.cmd";
Check: Not IsWin64; Root: HKCU; Subkey: "Software\Microsoft\Windows\CurrentVersion\Run"; ValueType: string; Permissions: users-full; ValueName: "MyApp"; ValueData: "{app}\Autoexec.cmd";
Run Code Online (Sandbox Code Playgroud)
如何添加条件,即我的应用仅以条件“选择客户端模式”开始。(ClientRadioButton.Checked)
Check参数文档说:
除了单个名称,您还可以使用布尔表达式。有关布尔表达式的示例,请参见组件和任务参数。
组件和任务参数文档说:
除了以空格分隔的列表之外,您还可以使用布尔表达式作为“组件”和“任务”参数。支持的运营商包括
not,and,和or。...
因此,添加一个辅助功能,如IsClientMode:
function IsClientMode: Boolean;
begin
Result := ClientRadioButton.Checked;
end;
Run Code Online (Sandbox Code Playgroud)
并IsWin64使用and布尔运算符将其与您现有的条件结合起来:
[Registry]
Check: IsWin64 and IsClientMode; ...
Check: (not IsWin64) and IsClientMode; ...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
925 次 |
| 最近记录: |