tags:

views:

388

answers:

3

Hi all,

I have an old, old VC++ app that we've ported to VS2005. Our existing users need to get the VC++2005 DLLs, so my app is placing the vcredist_x86.exe on their machines and running it. I check a registry entry under HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide\Installations\ which is x86_Microsoft.VC80.MFC blah blah 8.0.50727.762 blah blah... But... it appears that this doesn't exist on Vista. What is the correct entry to check to make sure that the vcredist ran to completion, so that I don't have to run it again?

Thanks!

+1  A: 

I never found anything definite on this, although you could look in the winsxs folder in the users windir for the right folders and files.

I've got our app's installer running it quietly when they install, which won't cause any problems if it is already there.

crashmstr
A: 

so my app is placing the vcredist_x86.exe on their machines and running it.

This is a highly irregular way of doing this.
Usually the side by side packages are automatically added to the dependencies of an installer object under the "detected dependencies"

shoosh
I'm not sure what you mean here. See, I have an OLD app that was build in VC++ 6.0, and we are running vcredist in order to prepare our existing installs to receive an upgrade to the VC2005-built binaries, which will come down to the users' machines through our own upgrade mechanism.
Laure
Ah, well in that case running an installer is indeed not relevant. Still running an exe as part of an upgrade doesn't sound right.
shoosh
A: 

Keeping it simple: just run the redist setup as part of a batch file that writes some registry value when it's done (so you could check and not run it twice) or write some file to a known location.

true, this way if your uses ran vcredist on their own sometime in the past your first installation would be superfluous, but I guess it can't really hurt and isn't that big of a deal.

Other than that (I realize it ain't pretty) I suspect you'll have to check that every single file that comes in the 2005 redist package is there (wasn't deleted by any chance or damaged), which is pretty much what the redist setup ought to do anyway.

Assaf Lavie