Search code examples
installationinno-setup

How to run a file before setup with Inno Setup


Is it possible to run a file with Inno Setup, before the setup begins? Documentation


Solution

  • Yes it is. In the [code] section run the file in the InitializeSetup() function. This example launches notepad before the setup runs.

    function InitializeSetup(): boolean;
    var
      ResultCode: integer;
    begin
    
      // Launch Notepad and wait for it to terminate
      if Exec(ExpandConstant('{win}\notepad.exe'), '', '', SW_SHOW,
         ewWaitUntilTerminated, ResultCode) then
      begin
        // handle success if necessary; ResultCode contains the exit code
      end
      else begin
        // handle failure if necessary; ResultCode contains the error code
      end;
    
      // Proceed Setup
      Result := True;
    
    end;