1

I'm trying to build an msi project in my VS2015 solution. I had installed the VS Installer Projects Extension.

Everything was working great just a few days ago. Now, however, when I try to build any msi it seems another installer package initiates. First it was SSMS 2008 R2 installer. Similar to this msdn question: Problem building setup project in Visual Studio 2008

I uninstalled all my sql instances other than 2016.

Now I still get the same behavior but with the Microsoft Visual Studio 2008 Shell (integrated mode) installer running.

SPerkins
  • 31
  • 2
  • [Enabling installer logging](https://support.microsoft.com/en-gb/help/223300/how-to-enable-windows-installer-logging) and looking at the log may help. – stuartd Aug 08 '17 at 13:12
  • I can't figure out why this is in the log: MSI (s) (10:84) [10:59:42:029]: Original package ==> c:\Windows\Installer\2004617b.msi MSI (s) (10:84) [10:59:42:029]: Package we're running from ==> c:\Windows\Installer\2004617b.msi – SPerkins Aug 08 '17 at 16:27
  • Look at the windows event log, Application, for MsiInstaller entries. You should see something about missing components. If you let the repair run to completion it may just fix it and it won't happen again. – PhilDW Aug 08 '17 at 19:41

3 Answers3

3

I had the same problem with VS 2015 asking for VS 2008 installation package.

Found this which solved my problem:

  1. Open a cmd as admin.

  2. Go to directory C:\Program Files (x86)\Common Files\microsoft shared\MSI Tools

  3. run: regsvr32.exe /u mergemod.dll"

  4. run: regsvr32.exe mergemod.dll"

Link to the hint

JJJ
  • 32,902
  • 20
  • 89
  • 102
0

Thanks @stuartd and @PhilDW for your help. Posting the answer here in case someone else experiences this. Your suggestion in turning on Logging gave me more to search on.

I had to install Orca from the Windows SDK to update a DLL.

Found the answer here

SPerkins
  • 31
  • 2
0

Self-Repair: What you are seeing is Windows Installer Self-Repair (also known as resiliency or self-healing). Essentially Windows Installer detectes that the wrong file or resource is on disk or in the registry and starts a a repair operation to correct the situation. Failing to correct the situation (for various technical reasons described below), this process may repeat itself endlessly whenever an application is launcher or a COM server is invoked, or a file association is triggered (and a few other triggers).

Here is a previous answer which describes the essence in a minimal sense: Why does the MSI installer reconfigure if I delete a file?


Self-Repair In Detail: More than anyone wants to know about self-repair:

  1. Self-repair - explained
  2. Self-repair - finding real-world solutions
  3. Self-repair - how to avoid it in your own package
Stein Åsmul
  • 39,960
  • 25
  • 91
  • 164