使用带有自定义目标的inno Setup创建桌面快捷方式

时间:2014-03-25 10:37:11

标签: installer install inno-setup

我想用inno Setup创建桌面短片。 我不知道必须在inno Setup的配置文件中添加什么来创建我的自定义目标。

以下是我想要使用的行:

"%userprofile%\AppData\Local\Google\Chrome SxS\Application\chrome.exe" --app=file://%userprofile%/Desktop/web/index.html --disable-web-security

以下是inno Setup脚本配置文件的内容:

[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked

[Icons]
Name: "{commondesktop}\SDK"; Filename: "{app}\index.html"; WorkingDir: "{app}"; IconFilename: {app}\tools\favicon.ico; Tasks: desktopicon

1 个答案:

答案 0 :(得分:1)

要指定图标参数,Parameters部分条目可以使用[Icons]参数。其余部分与您已使用的相同。只是两个音符;用Inno Setup脚本引擎给出的相应路径常量替换这些环境变量,并在使用正斜杠(file://%userprofile%/..)扩展文件名时使用这些变量时要小心。这个命令行参数不会在应用程序中失败。因为它用baskslashes扩展了路径?

在此脚本中,应考虑两个提到的问题:

[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={pf}\My Program

[Icons]
Name: "{commondesktop}\SDK"; Filename: "{localappdata}\Google\Chrome SxS\Application\chrome.exe"; Parameters: "{code:GetParameters}"

[Code]
function ForwardSlashes(const Value: string): string;
begin
  Result := Value;
  StringChangeEx(Result, '\', '/', True);
end;

function GetParameters(Value: string): string;
var
  S: string;
begin
  S := ForwardSlashes(ExpandConstant('file://{userdesktop}/web/index.html'));
  Result := Format('--app=%s --disable-web-security', [S]);
end;