在提取文件 inno 之前检查条件

Check condition before extracting files inno

我想在开始解压之前检查是否有某个文件,因为如果有那个文件安装必须停止。可能吗?

我刚刚找到了一个方法;我使用了 CurStepChanged 事件方法并在那里等待 CurStep=ssInstall,这表明安装过程即将开始。那时我检查文件是否存在,如果存在,我终止设置过程:

[Code]
procedure ExitProcess(uExitCode: UINT);
  external 'ExitProcess@kernel32.dll stdcall';

procedure CurStepChanged(CurStep: TSetupStep);
begin
  if CurStep = ssInstall then
  begin
    if FileExists(ExpandConstant('{app}\.versionC204v1')) then
    begin
      MsgBox('A patched version detected. Setup will now exit.', mbInformation, MB_OK);
      ExitProcess(0);
    end;
  end;
end;