PDA

View Full Version : Trouble finding msvcr80.dll



GregKhra
05-10-2010, 05:05 PM
When I build the installation with Express 2010 I get the following warning:
"ISEXP : warning -6248: Could not find dependent file msvcr80.dll, or one of its dependencies". I made sure that the merge module "Visual C++ 8.0 CRT (x86)" is included (my target platform is x86 in Visual Studio project). However the warning would not go away. Policy is included as well.

When I install and start start the application, it runs on some computers and crashes on others giving the error "System.Runtime.InteropServices.COMException (0x800736B1): This application has failed to start because the application configuration is incorrect." I suspect it is caused my missing C++ runtime, specifically by the fact that C++ runtime version in my DLL's manifest is not the same as the version in the merge module that I include with the installation. However I cannot verify that because merge module does not report the version.

I have C++ .Net 2.0 project developed with Visual Studio 2005 SP1. The project includes C# executable and C++ DLL (not COM).

Does anyone know how to fix it?

GregKhra
05-11-2010, 10:30 AM
I have figured it out. When I used Orca tool, I found that the merge modules in "Common Files" folder do have correct version ('8.0.50727.4053) - that is what my program manifest file required. That led to discovery that Installshield program is using its own set of merge modules and they are outdated (8.0.50727.762). When I replaced Installshield collection of merge modules in "C:\Program Files\InstallShield\2010\Modules\i386" with the latest ones from "C:\Program Files\Common Files\Merge Modules", my installation started to work.