1

I am very new to wix so please bear with me.

I have created an installer for a product abc.exe

Using this one installer the client wants to install abc.exe in 6 different directories

But once abc.exe is installer and then if we run the installer again, the remove, repair window opens up. So there is absolutely no choice for the client to run the installer again to 'install' the same product elsewhere.

My UI code is as below

  <Product>
    <Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR" />
    <UI>
      <UIRef Id="WixUI_InstallDir" />
      <DialogRef Id="InstallInfoDlg" />
      <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="InstallInfoDlg">1</Publish>
    </UI>
    <UIRef Id="WixUI_ErrorProgressText" />
  </Product>

Can I make the Install dialog show up again instead of the uninstall dialog when the installer is run again?

Pavel Anikhouski
  • 21,776
  • 12
  • 51
  • 66
  • What solution approach will you go for? – Stein Åsmul Sep 16 '19 at 14:47
  • For now, we have decided to go with a per-User installation approach to have multiple copies on the same system. Thank you for your valuable links below – user3208131 Oct 02 '19 at 16:25
  • Oh great, too many links tend to confuse people. Glad they helped. Good luck with the solution, do report any problems later if you see them. I am always skeptical to per-user deployment (updates, patching, uninstall issues), but many like it. – Stein Åsmul Oct 02 '19 at 16:45

1 Answers1

0

Duplicate File: Adding this after writing the below. There is a construct that can duplicate a file to show up in several places after installation, but this is not a dynamic thing, you would need to specify all instances of the copies. Check the CopyFile element. Found this sample quickly, didn't test it.


Warum?: Can we ask why the user wants this? The whole MSI paradigm is sort of geared to support single installation instances - it sort of breaks down for this particular use case - which admittedly is something people do want to do sometimes - though it might not be the right call to do :-).

Simple Advice: I would check those requirement and see if I could use a simpler approach. If you want multiple instances, you could try:

  • Virtualization: For example AppV (virtual packages), virtual images or MSIX (very new and Windows 10 only for now).
  • Transforms: More advanced options would be instance transforms. A concept I do not like. Described in the old answers linked below.
  • Side-By-Side: Side-by-side installation involves creating different MSI files for different "flavors" of your application. This can be effective and simple once set up.
  • Other: There are other options. Please see the answer below:

Answers: Older answers on this topic:


MSIX: Maybe consider having a quick read about MSIX - a new universal package format designed for Windows 10 apps. "Containers".

Stein Åsmul
  • 39,960
  • 25
  • 91
  • 164