Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

VC++ 2005 gives: "error C1902: Program database manager mismatch"

Status
Not open for further replies.

cpjust

Programmer
Sep 23, 2003
2,132
US
Hi,
I had Visual C++ 2003 (Enterprise Edition) installed on my system (XP Pro).
I then installed Visual C++ 6.0 (Enterprise Edition).

At that point, both compilers worked fine.

Then I installed Visual C++ 2005 (Team Edition) + SP1.

The first 2 compilers worked fine, but any program I try to compile with 2005 gives me this error:
Code:
fatal error C1902: Program database manager mismatch; please check your installation

I tried reinstalling the 2005 SP1. No good.
I tried uninstalling 2005 SP1. No good.
I tried uninstalling VC++ 2005 & 2003, then installing 2005. No good.

I found some info on Google about C1902, and they just say to make sure your versions of mspdb80.dll & mspdbsrv.exe are the same.

In these directories:
"C:\Program Files\Microsoft Visual Studio 8\Common7\IDE"
"C:\Program Files\Microsoft Visual Studio 8\Team Tools\Performance Tools"
"C:\Program Files\Common Files\Microsoft Shared\VSA\8.0\VsaEnv"
The files are:
mspdb80.dll = 8.0.50727.42 09/23/2005 12:16AM
mspdbsrv.exe = 8.0.50727.42 09/23/2005 07:01AM

But in the Windows\System32 directory the files are:
mspdb80.dll = 8.0.50727.42 2/7/2007 1:07PM
mspdbsrv.exe doesn't exist there.

And in these directories:
"C:\Program Files\Microsoft Platform SDK\Bin\win64"
"C:\Program Files\Microsoft Platform SDK\Bin\win64\x86\AMD64"
The files are:
mspdb80.dll = 8.0.40310.39 04/14/2005 06:11PM
mspdbsrv.exe = 8.0.40310.39 04/14/2005 06:11PM

Should I just copy the 8.0.50727.42 versions over the 8.0.40310.39 versions, and if so, why does the 8.0.50727.42 version in Windows\System32 have a newer date than the "Program Files" versions?
 
OK, I copied the 8.0.50727.42 version of the files into the directories with the older versions.

I also did a FC between the two 8.0.50727.42 versions that have different dates, and there are no differences between them.

But I still get the same error when I try to compile something.
 
Now I re-installed VC++ 2005 SP1 and it updated files to version 8.0.50727.762 12/1/2006 11:29PM only in these directories:
"C:\Program Files\Microsoft Visual Studio 8\Team Tools\Performance Tools"
"C:\Program Files\Microsoft Visual Studio 8\Common7\IDE"
"C:\Program Files\Common Files\Microsoft Shared\VSA\8.0\VsaEnv
 
Finally! After 1.5 days of trying everything I could think of... The answer was as simple as deleting mspdb80.dll from my Windows\system32 directory.

IMHO this problem arises when mspdb80.dll exists in some of directories that are listed in the PATH environment variable, but mspdbsrv.exe does not. By default, both of them are not on the search path, so just guys like me who are copying files around HDD are able to face this problem :).

Here there's also info about people getting this problem when using Cygwin:
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top