11

I have a installshiled project which generates setup.exe file. I'd like to enable silent install by generating proper setup.iss file. I ran the following command:

Setup.exe /r

which lunched the installer, but it never created the setup.iss file. I looked in C:\Windows as the documentation suggested, as well as some other locations (local directory, program files etc.)

Why isn't it created and how to fix?

Thanks,

Omer Dagan
  • 14,868
  • 16
  • 44
  • 60

2 Answers2

14

Ok I found the problem, and a workaround:

The problem was that my msi project was a Basic MSI Project, as opposed to InstallScript and InstallScript MSI projects. This kind of project does not support reading a response file (aka setup.iss). However, there is a way to perform silent installation for the .msi / setup.exe file:

Setup.exe /s /v"/qn"

will do the trick.

All of this information can be found here

Omer Dagan
  • 14,868
  • 16
  • 44
  • 60
  • Basic MSI projects can also be extracted with setup.exe /a. This runs an administrative install and creates an extracted installation source media. After that you can install the extracted msi with regular msiexec commands: msiexec /i name.msi /qn – Stein Åsmul Feb 02 '14 at 12:41
  • how can we run application after the installation without a response file in silent installation. – Anoop Mishra Nov 18 '15 at 10:22
1

Another option is to explicitly state where you want the setup file generated, using the /f1 option:

Setup.exe /r /f1"C:\your\path\here\setup.iss"

Documentation on this can be found here, but here is a summary from that link:

Using the /f1 option enables you to specify where the response file is (or where it should be created) and what its name is, as in Setup.exe /s /f1"C:\Temp\Setup.iss". Specify an absolute path; using a relative path gives unpredictable results. The /f1 option is available both when creating a response file (with the /r option) and when using a response file (with the /s option)

jtate
  • 2,612
  • 7
  • 25
  • 35
  • 1
    Just adding emphasis, but that lack of a space between /f1 and the file directory is correct. This command only works if you don't put a space after /f1. – John Apr 07 '22 at 16:20