VS2008中的 fatal error C1902: 程序数据库管理器不匹配

因为VC\Bin\下没有“msobj80.dll,mspdb80.dll,mspdbcore.dll,mspdbsrv.exe”这四个文件,解决的方法:
1>直接从Common7\IDE\下复制这四个文件到VC\Bin\下即可解决
2> 添加系统变量(Path),这样:我的电脑->属性->高级->环境变量->系统变量,在path中添加C:\Program Files\Microsoft Visual Studio 8\Common7\IDE;,注意结尾最后用“;”隔开!
这样在用cl编译就不会出现mspdb80.dll文件找不到的错误了。

关于 Visual Studio 2008中 “ fatal error C1902: 程序数据库管理器不匹配;请检查安装”问题及其解决办法

下午做DLL的时候,参照了孙鑫《VC++深入详解》Dumpbin命令,cmd后确定为无效命令,按照书上说的

在F:\My Studio\VS2008\VC\bin(我的VS装在F:\My Studio下)找dumpbin.exe,不行。原因可能是VS的安装

环境被破坏了。运行批处理vcvars32.bat后,再试一次还是不行,不过提示了mspdb80.dll找不到,在马涛

电脑里用Win+F找出来后,直接复制粘贴到F:\My Studio\VS2008\VC\bin目录下,修改系统Path后,

dumpbin命令好用,OK!连着做好几个有关动态链接以及MFC的小projrct都没问题。

实验结束,关机,提本走人。吃晚饭后,再用VS2008接着做MFC时,生成解决方案出错。

即使做一个Sample的SDI和MDI也是一样的问题。


错误 1 fatal error C1902: 程序数据库管理器不匹配;请检查安装

百度+Google=:
1.到C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE下面拷贝mspdbsrv.exe到C:\Program Files\Microsoft Visual Studio 9.0\VC\bin下面,重启VS即可。
http://blog.csdn.net/ALLBLUESEA/archive/2009/11/09/4788825.aspx


2.VC2008安装路径Microsoft Visual Studio 9\VC\bin里放了个mspdb80.dll
删除即可


3.:mspdbsrv.exe 或 mspdbcore.dll 丢失或者其版本和 mspdb80.dll 的版本不同,确定这三个文件的相同版本安装在系统里。
在VC安装目录下的\Common7\IDE 目录下拷贝这三个文件到 安装目录下的VC\bin下即可
http://topic.csdn.net/u/20070207/14/37169fb9-07f8-4c8c-a95a-1cf13962518b.html


4.VS2005的,都是一个娘胎的,处方应该可以用:


VC++2005 :Fatal Error C1902:程序数据库管理器不匹配;请检查安装 解决


安装VC++ SP1后,调试程序时候提示错误 Fatal Error C1902:程序数据库管理器不匹配;请检查安装,


不知道什么意思,于是Google了一下,网上有说是“创建程序数据库文件(.pdb) 时所使用的DBI.dll 版本比

编译时发现的版本新。在系统上安装最新的DBI.dll 版本。 ”不知道怎么安装新的DBI.dll,于是又去MSDN

上搜索错误信息,于是搜出了这么一条:Fatal Error C1902 (C++) :A program database file (.pdb) was

created using a newer version of mspdb80.dll than the one found while compiling.This error usually

indicates that mspdbsrv.exe or mspdbcore.dll are missing or have different versions from mspdb80.dll.

Ensure matching versions of mspdbsrv.exe, mspdbcore.dll, and mspdb80.dll are installed on your

system.


意思好像是:程序的数据库文件(.pdb)被一个比编译时版本新的 mspdb80.dll 所生成,错误通常指示

mspdbsrv.exe 或 mspdbcore.dll 丢失或者其版本和 mspdb80.dll 的版本不同,确定这三个文件的相同版本

安装在系统里。


于是,我到我VC安装目录 \Program Files\Microsoft Visual Studio 8\VC\bin 里一看,果然这三个文件的版

本不一样,然后我到目录 D:\Program Files\Microsoft Visual Studio 8\Common7\IDE 里重新 copy 了这个

三个相同版本的文件到 \Program Files\Microsoft Visual Studio 8\VC\bin ,然后重新编译程序,果然没有那

个错误了。http://vickyzhe.spaces.live.com/Blog/cns!327CA304C58B3FFC!196.entry?wa=wsignin1.0&sa=907515618

解决方法:


到C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE下面拷贝mspdbsrv.exe mspdb80.dll mspdbcore.dll 到C:\Program Files\Microsoft Visual Studio 9.0\VC\bin下面,重启VS即可。
基本可靠,不妨试一试。


MSDN:致命错误 C1902
错误消息 程序数据库管理器不匹配;请检查安装


创建程序数据库文件 (.pdb) 时所使用的 mspdbXX.dll 版本比编译器在您的系统上发现的版本新。此错误通

常表示缺少 mspdbsrv.exe 或 mspdbcore.dll,或者它们的版本与 mspdbXX.dll 不同。(mspdbXX.dll 文件

名中的 XX 占位符会随着每个产品发行版本而更改。例如,在 Visual Studio 2005 中,该文件名是

mspdb80.dll。


请确保系统上安装的 mspdbsrv.exe、mspdbcore.dll 和 mspdbXX.dll 的版本相匹配。请确保未将不匹配的

版本复制到包含适用于目标平台的编译器和链接工具的目录下。例如,您可能已经复制这些文件,以便可以

在命令提示处激活编译器或链接工具,而不需要相应地设置 PATH 环境变量。


ms-help://MS.MSDNQTR.v90.chs/dv_vccomp/html/2dc066cc-fcb1-4725-8bcb-9f44dd0905b7.htm

靠,搞那么麻烦,最后一句那就对啦……


“到C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE下面拷贝mspdbsrv.exe mspdb80.dll mspdbcore.dll 到C:\Program Files\Microsoft Visual Studio 9.0\VC\bin下面,重启VS即可。”用这SB方法试了一下,结果SB了。

致命的LINK1000出现了。

然后:



然后返工,把刚才拷贝的文件一个个删除了,实验编译结果,总是在Link阶段出现问题停止工作。继续搜了一对关于LINK的错误,差点重装了。干脆将后一个目录的三个文件全部删除,重新拷贝,然后重启VS,试了几次,很奇怪的是有的时候出现了LINK1000错误,然而关闭该项目再打开进行编译连接执行又没有哦题了。

MS(为了配合中华人民共和国中央人民电视台改口美国国家职业篮球联赛,还是写渺似吧)解决了,

不过还是有点困惑。


搜集下贴上,算作交代吧……浪费这么多时间,够装3次Win7了,不过有时候,冲动是魔鬼!

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值