Inno Setup需要app的foldername不变

时间:2014-01-08 15:33:57

标签: inno-setup

对于特定的设置,我需要使用inno-setup脚本的{app}常量的foldername(没有路径)。

因此,如果在向导中选择了目标文件夹'选择下一个文件夹:C:\ ProgramFiles \ MyAppFolder,我需要' MyAppFolder'在设置脚本中使用的变量中。

1 个答案:

答案 0 :(得分:1)

如果您只想获取{app}路径的尾部,则可以使用已删除反斜杠的路径调用ExtractFileName函数。返回给定路径的尾部。在以下脚本中,除非用户选择驱动器根目录(例如PathTail),否则C:\ var将包含路径尾部。在这种情况下,PathTail变量将为空:

[Code]
function NextButtonClick(CurPageID: Integer): Boolean;
var
  PathTail: string;
begin
  Result := True;
  if CurPageID = wpSelectDir then
  begin
    PathTail := ExtractFileName(RemoveBackslashUnlessRoot(ExpandConstant('{app}')));
    MsgBox('PathTail: ' + PathTail, mbInformation, MB_OK);
  end;
end;

为了清楚起见,这里有你会得到的例子:

User selected                          PathTail contains
----------------------------           ----------------------------
C:\                                    ''
C:\Program Files\AppFolder\            'AppFolder'
C:\Program Files\Subfolder\AppFolder\  'AppFolder'