异常“Exception from HRESULT: 0x80040653”是什么意思?在ArcObjects中调用IFeatureClass.Search是什么意思?
我正在支持一个基于 ESRI ArcObjects 构建的应用程序,而最初的开发人员早已不在了。该应用程序在运行良好几年后开始因此异常而失败。该应用程序按每日计划运行。
该错误消息不是很有帮助。有什么想法可能导致错误的原因吗?
Exception from HRESULT: 0x80040653
Date: Thursday, 4 March 2010
Time: 1:47:33 a.m.
Stack trace:
at ESRI.ArcGIS.Geodatabase.IFeatureClass.Search(IQueryFilter filter, Boolean Recycling)
I'm supporting an application built on ESRI ArcObjects where the original developers are long since gone. The application after having worked fine for a couple of years has started failing with this exception. The application runs on a daily schedule.
The error message isn't very helpful. Any ideas what the cause of the error might be?
Exception from HRESULT: 0x80040653
Date: Thursday, 4 March 2010
Time: 1:47:33 a.m.
Stack trace:
at ESRI.ArcGIS.Geodatabase.IFeatureClass.Search(IQueryFilter filter, Boolean Recycling)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这是一篇文章的链接
ESRI 错误代码可用于查找错误。
您收到的特定错误被定义为 FDO_E_FIELD_NOT_FOUND,您已经发现该错误表示尝试使用表中不存在的字段名称。
Here is a link to an article on
ESRI error codes that can be used to look up an error.
The particualar error you recieved is defined as FDO_E_FIELD_NOT_FOUND, which you already figured out indicates the attempted use of a field name that is not in the table.
事实证明,错误是由传递到 Search 方法的 IQueryFilter.WhereClause 属性引起的,该属性包含要素类中不存在的字段名称。
如果抛出的异常有相关的消息,那就太好了。这会节省我很多时间。
It turns out the error was caused by the IQueryFilter.WhereClause property that was getting passed into the Search method, contained the name of a field that didn't exist in the feature class.
It would be nice if the exception thrown had a relevant message. It would've saved me a lot of time.