奇怪的 unhandled exception in 0xc0000005 *.exe:、错误

 奇怪的 unhandled exception in 0xc0000005 *.exe: access violation 错误

本文转自http://blog.csdn.net/williamvon/archive/2008/04/18/2303173.aspx

 

 

最近遇到一个很奇怪的错误:Unhandled exception in 0xc0000005 *.exe:0xC0000005:Acess Violation. 百思不得其解。很郁闷。

起因是调试一本叫做《Visual C++ 6.0企业经营管理系统实例导航》的书中源代码。其代码是用vc6.0+ado+sqlserver2000开发的。我将数据库移植到了sqlserver2005之上,同时按照要求配置完成ODBC。接着直接编译运行。编译过程没有问题,一运行就会报上面错误。莫名其妙。没有办法,只好跟踪调试,发现在运行到打开结果集的时候总是会出现下面错误:

Unhandled exception in *.exe(KERNEL32.DLL);0xE06D7363:Microsoft C++ Exception.

 确定之后又是Unhandled exception in *.exe:Acess Violation. 错误。

继续跟踪进入结果集打开函数open()内部,这回发现病因:其返回句柄值是-2147217865(80040e37),一查说是表名无效!无可能。

后来看到此人博客:http://blog.csdn.net/Benben9527/archive/2007/04/25/1584172.aspx 提到一个问题:把数据库备份还原到另一个服务器时,可能会产生孤立用户的问题。我的数据库不是还原的,是直接附加的,应该不存在这个问题。但有可能,设置ODBC时候登陆用户名设错了。将 集成windows身份验证 改成 使用用户输入ID和密码的SQL SERVER的验证。并设置默认设置。下一步,更改默认的数据库为,选中你的数据库。

OK。再次编译运行,问题排除。

发表于 @ 2008年04月18日 10:35:


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/williamvon/archive/2008/04/18/2303173.aspx

你可能感兴趣的:(奇怪的 unhandled exception in 0xc0000005 *.exe:、错误)