cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
jeffmetzner
Level 3

Install both x86 & x64 VC++ 10 runtimes?

I've got a Basic MSI project whose prerequisites have just changed from VC++ 8 to VC++ 10 SP1. It's a 32-bit installer that installs a 32-bit program with a couple of 64-bit components. (It uses an LSP for Internet monitoring, so it needs both a 32-bit and a 64-bit LSP so that both kinds of apps can be monitored.) So, both the 32-bit and the 64-bit VC++ runtimes are required on a 64-bit system.

With the VC++ 8 merge modules, this wasn't an issue because of the WinSxs (side-by-side) folders. Now that MS has abandoned that and gone back to putting all the runtimes in C:\Windows\System32, installing both VC++ 10 runtimes as prerequisites doesn't work because they overwrite each other. (Presumably because the 64-bit runtime merge module is getting redirected to SysWow64 even though it shouldn't be.)

Is there a way to get both these runtimes installed? I don't mind using the standalone vcredist_x64 installer instead of the x64 merge modules, but when I tried to launch that I got an "another installation process is running" error. Maybe the redirection can be temporarily disabled?

I also thought about the in-folder runtime install, where the DLLs go in the same folder as your application, but since the LSPs have to go in the system folder I was nervous about putting yet another set of runtimes there.
Labels (1)
0 Kudos
(1) Reply
Christopher_Pai
Level 16

Take a look at Setup Prerequisites. You'll need to build your installer with a setup.exe and it'll run the x86 and x64 redist prior to launching your MSI to avoid the mutex constraint that you are experiencing.
0 Kudos