Click here to Skip to main content
11,705,119 members (46,330 online)
Rate this: bad
Please Sign up or sign in to vote.
See more: Win32 VC10.0
I recently migrated VC 6.0 project to VS2010. The project was developed a decade ago. I build everything with VC10.0 compiler. Certain changes had to be made to adjust to latest MFC changes. The project is successfully build and running fine. But when I tried to install it on another machine, the registration failed. On target machine, I installed VC6.0, and now the installation is sucsseful. This indicates that there are still certain dependencies on VC6.0. In my include & link path, I have no references to VC6.0 directories. Still, I am left with this issue. How can find out such dependencies and resolve them?
Posted 3-Feb-11 23:37pm
Rate this: bad
Please Sign up or sign in to vote.

Solution 1

Try using the Depends.exe tool on your executable. It will give all dll dependencies, and hint what's missing. This tool came with VC6 if I remember correctly. It's just a plain exe file you can copy to a target machine and run on your binaries there to easily detect missing dlls, and traverse dependencies.
Rate this: bad
Please Sign up or sign in to vote.

Solution 2

To clarify on Niklas's answer, Depends.exe can be found here[^].

Also check to make sure you are using a static link to MFC and the CRT in Project Properties>General>Use of MFC and Project Properties>C++>Code Generation>Runtime Library. If you don't want to or can't use a static link (which happens from time to time) then you might need to get the VS2010 runtimes[^] (or for x64[^]).
Rate this: bad
Please Sign up or sign in to vote.

Solution 3

I am aware of depends.exe and I checked the dependencies before submitting the issue on forum. How can I find from depends.exe whether the library being listed corresponds to VC6.0 installation or VC10.0 installation?
Niklas Lindquist at 4-Feb-11 10:56am
You probably can't by any other means than the name of the dll. If you can, try installing again on a clean machine, and use depends.exe there when it doesn't work.
Is there a chance it's not related to a VC version dll, but some other dll missing, which got installed by VC6?
Albert Holguin at 5-Feb-11 20:39pm
Try looking at the applications manifest to see if there's dependencies on the old dlls. Otherwise, as Niklas suggested, may be something else that was installed with VC6.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 Sergey Alexandrovich Kryukov 595
1 OriginalGriff 289
2 Andy Lanng 175
3 CPallini 162
4 ppolymorphe 126
0 OriginalGriff 8,958
1 Sergey Alexandrovich Kryukov 8,276
2 CPallini 5,189
3 Maciej Los 4,726
4 Mika Wendelius 3,606

Advertise | Privacy | Mobile
Web01 | 2.8.150819.1 | Last Updated 4 Feb 2011
Copyright © CodeProject, 1999-2015
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100