根据 Inno Setup 中的任务选择,将 "true"/"false" 写入 INI 文件
Write "true"/"false" to an INI file based on task selection in Inno Setup
在 [Tasks]
部分我有:
[Tasks]
Name: "userexpericeneimprovement"; \
Description: "{cm:JoinUserExpericeneImprovement}"; \
GroupDescription: "{cm:AdditionalIcons}"; MinVersion: 0.0,5.0;
并且在 [INI]
中是这个特定的命令:
[INI]
FileName: "{app}\ceip.ini"; Section: "General"; Key: "enabled"; \
String: "{code:GetUserJoin}";
我的目的是检查所选任务,然后 [Code]
{code:GetUserJoin}
部分将在 ceip.ini
文件中填写为 "true"
或 "false"
选中或未选中。
即使没有使用任何 Pascal 脚本 Tasks
parameter:
,这也足以实现
[INI]
FileName: "{app}\ceip.ini"; Section: "General"; Key: "enabled"; String: "true"; \
Tasks: userexpericeneimprovement
FileName: "{app}\ceip.ini"; Section: "General"; Key: "enabled"; String: "false"; \
Tasks: not userexpericeneimprovement
如果你想使用 Pascal 脚本,使用 WizardIsTaskSelected
function:
实现也很简单
[INI]
FileName: "{app}\ceip.ini"; Section: "General"; Key: "enabled"; \
String: "{code:GetUserJoin}";
[Code]
function GetUserJoin(Param: string): string;
begin
if WizardIsTaskSelected('userexpericeneimprovement') then Result := 'true'
else Result := 'false';
end;
在 [Tasks]
部分我有:
[Tasks]
Name: "userexpericeneimprovement"; \
Description: "{cm:JoinUserExpericeneImprovement}"; \
GroupDescription: "{cm:AdditionalIcons}"; MinVersion: 0.0,5.0;
并且在 [INI]
中是这个特定的命令:
[INI]
FileName: "{app}\ceip.ini"; Section: "General"; Key: "enabled"; \
String: "{code:GetUserJoin}";
我的目的是检查所选任务,然后 [Code]
{code:GetUserJoin}
部分将在 ceip.ini
文件中填写为 "true"
或 "false"
选中或未选中。
即使没有使用任何 Pascal 脚本 Tasks
parameter:
[INI]
FileName: "{app}\ceip.ini"; Section: "General"; Key: "enabled"; String: "true"; \
Tasks: userexpericeneimprovement
FileName: "{app}\ceip.ini"; Section: "General"; Key: "enabled"; String: "false"; \
Tasks: not userexpericeneimprovement
如果你想使用 Pascal 脚本,使用 WizardIsTaskSelected
function:
[INI]
FileName: "{app}\ceip.ini"; Section: "General"; Key: "enabled"; \
String: "{code:GetUserJoin}";
[Code]
function GetUserJoin(Param: string): string;
begin
if WizardIsTaskSelected('userexpericeneimprovement') then Result := 'true'
else Result := 'false';
end;