如果选择了组件,Inno Setup会重命名文件

时间:2014-09-08 18:42:06

标签: inno-setup

我正在尝试重命名文件,如果选择了某个组件,或者选择了完整安装。但是有一些问题。

当我运行它时,我收到错误:

Line 55;
Column 5;
Identifier expected;

下面是procedure CurStepChanged(CurStep: TSetupStep);行。

[Code]
function GetFileName(const AFileName: string): string;
begin
  Result := ExpandConstant('{app}\' + AFileName);
end;

procedure AfterInstallProc;
begin
  If IsComponentSelected('update') or IsComponentSelected('full') then
  begin
    procedure CurStepChanged(CurStep: TSetupStep);
    begin
      if (CurStep = ssInstall) then
      begin
        if not FileExists(GetFileName('update.old.dat')) then
          RenameFile(GetFileName('update.dat'), GetFileName('update.old.dat'));
      end;
    end;
  else
    result := true;
  end;
end;

请注意,我在这里搜索我的问题时得到了这些代码。我不确定我是否正确执行它。修复了一些错误,如选择组件,但现在看来重命名文件的程序是错误的?

1 个答案:

答案 0 :(得分:2)

改为写下:

procedure CurStepChanged(CurStep: TSetupStep);
begin
  if (CurStep = ssInstall) and (IsComponentSelected('full') or
    IsComponentSelected('update')) then
  begin
    if not FileExists(GetFileName('update.old.dat')) then
      RenameFile(GetFileName('update.dat'), GetFileName('update.old.dat'));
  end;
end;