问题“fatal error C1902: Program database manager mismatch; please check your installation”的解决方案:
Well, I belive it is not really a compiler bug.
Here are steps how I got it and solve:
1. I like to compile some sources from the command prompt, so I added to the PATH environment
variable - "C:/Program Files/Microsoft Visual Studio 8/VC/bin/".
After that I had to copy some files from "C:/Program Files/Microsoft Visual Studio 8/Common7/IDE/"
to get cl.exe working (one of files was mspdb80.dll).
2. Some time later I tryed to compile a project from MSDev and got C1902 error.
3. With MSDN search I got to this place to see Jonathan Caves's helpful message about mspdbsrv.exe.
4. I just copied that EXE to /VC/bin/ and everithing becomes Ok.
5. Now I can compile anything from both MSDev and C:/ :).
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 :).
Thanks for help. Hope this post will be of some use.
I suspect that there is a more fundamental problem here. It seems that somehow you have
got a mismatched mspdb80.dll and mspdbsrv.exe on your system. The only fix,
unfortunately, is to do a re-install of the product.
Here's the steps I would advise:
Make sure the IDE is not running
Run "Task Manager" and click on the "Processes" tab: if there is a mspdbsrv.exe process running
then select the process and then click on "End Process" button at the bottom
Uninstall the product
At this point you might want to search for any copies of "mspdbsrv.exe" and "mspdb80.dll"
on your machine: you may have older versions left over from an earlier install:
if you find any you should delete them.
Once you are certain that your machine is clean you can then re-install the product.
These steps, hopefully, will ensure that you have matched versions of mspdb80.dll and mspdbsrv.exe