Click here to Skip to main content
Rate this: bad
good
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 4-Feb-11 0:37am
Rate this: bad
good
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.
  Permalink  
Rate this: bad
good
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[^]).
  Permalink  
Rate this: bad
good
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?
  Permalink  
Comments
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 OriginalGriff 240
1 Kamal Rocks 184
2 PIEBALDconsult 150
3 BillWoodruff 148
4 Jochen Arndt 135
0 OriginalGriff 5,695
1 DamithSL 4,506
2 Maciej Los 4,007
3 Kornfeld Eliyahu Peter 3,480
4 Sergey Alexandrovich Kryukov 3,190


Advertise | Privacy | Mobile
Web04 | 2.8.141216.1 | Last Updated 4 Feb 2011
Copyright © CodeProject, 1999-2014
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