Inno setup - skip installation if other program is not installed

后端 未结 1 419
失恋的感觉
失恋的感觉 2021-01-03 07:06

I have to find way how to skip installation if other program is not installed. I can detect registry of other program (basic script returns true/false), it is not problem. B

相关标签:
1条回答
  • 2021-01-03 07:17

    This is very easy. Just add

    [Code]
    
    function IsApp2Installed: boolean;
    begin
      result := RegKeyExists(HKEY_LOCAL_MACHINE,
        'SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\app2.exe');
    end;
    
    function InitializeSetup: boolean;
    begin
      result := IsApp2Installed;
      if not result then
        MsgBox('You need to install App2 before you install ThisApp. Install App2 and then run this installer again.', mbError, MB_OK);
    end;
    

    to your ISS file. InitializeSetup is a so-called event function that is executed when the installer starts (even before the wizard GUI is shown). If you return false, the installer will exit immediately.

    0 讨论(0)
提交回复
热议问题