j4y


I have some apps created in visual studio 6 and MFC 4.0. I haven't been able to upgrade these because once I do the apps require MFC80.dll Is there a way to get VS2005 to use the old version I don't want to break the apps for users on Win98/Win2000 or force them to download mfc80.dll.


Re: Visual C++ General Is it possible to get Visual Studio 2005 to use MFC42.dll instead of MFC80.dll?

Simple Samples

I doubt it is possible. The old MFC libraries will depend on the old C runtime libraries. I doubt the code generated by the VC 2005 compiler can work with the old runtime.






Re: Visual C++ General Is it possible to get Visual Studio 2005 to use MFC42.dll instead of MFC80.dll?

crescens2k

The first thing you must remember, when you compile the apps with VC2005 it will require the newer version of the CRT too. So you will have a dependency on msvcr8.dll. Why is this significant First of all, you will have to force the users to download the new version of the runtime anyway, and secondly, the new version of the mfc library is in the same redistributable as the CRT. But you should be the one to create the setup so that the user doesn't have to worry about downloading any aditional libraries anyway.






Re: Visual C++ General Is it possible to get Visual Studio 2005 to use MFC42.dll instead of MFC80.dll?

Simple Samples

crescens2k wrote:
The first thing you must remember, when you compile the apps with VC2005 it will require the newer version of the CRT too. So you will have a dependency on msvcr8.dll. Why is this significant First of all, you will have to force the users to download the new version of the runtime anyway, and secondly, the new version of the mfc library is in the same redistributable as the CRT. But you should be the one to create the setup so that the user doesn't have to worry about downloading any aditional libraries anyway.

Isn't the question asking how to avoid doing that






Re: Visual C++ General Is it possible to get Visual Studio 2005 to use MFC42.dll instead of MFC80.dll?

crescens2k

Yup, but since the CRT and the rest of the libraries are shipped together then there is no real reason that the MFC shouldn't be shipped anyway.

Well there shouldn't be a problem originally anyway. If you link with the MFC4.2 libraries instead of the MFC8.0 libraries then the big thing to remember is that the 4.2 libraries are a standard part of windows, so mfc42.dll and its dependencies should be available no matter what.

Just have to be careful that you make sure your memory allocation is done by either the MFC or the program itself, you can't mix and match.