2010-03-04 6 views
0

원본 개발자가 오래 전에 ESRI ArcObjects를 기반으로 구축 된 애플리케이션을 지원하고 있습니다. 2 년 동안 정상적으로 작동 한 후에 애플리케이션이 예외적으로 실패하기 시작했습니다. 응용 프로그램은 매일 실행됩니다.ArcObjects에서 IFeatureClass.Search를 호출 할 때 "HRESULT 예외 : 0x80040653"예외는 무엇을 의미합니까?

오류 메시지는별로 도움이되지 않습니다. 어떤 아이디어가 오류의 원인 일 수 있습니까?

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) 
+0

최근에 시스템이 변경 되었습니까? 그렇지 않다면 오류 코드를 검색하면 하나 이상의 유용한 스레드가 표시됩니다. – zildjohn01

+0

그래,이 스레드의 마지막 게시물 (http://forums.esri.com/Thread.asp?c=93&f=1147&t=191348)은 올바른 방향으로 나를 가리켰다. – GiddyUpHorsey

답변

1

그것은 오류가 검색 방법에 전달하기 된 IQueryFilter.WhereClause 속성에서 기인했다 밝혀, 기능 클래스에 존재하지 않는 필드의 이름이 포함되어 있습니다.

발생하는 예외에 관련 메시지가 있으면 좋을 것입니다. 그것은 나에게 많은 시간을 절약 해 주었을 것이다.

1

여기는 오류를 찾는 데 사용할 수있는 ESRI error codes의 기사에 대한 링크입니다.

받은 오류는 FDO_E_FIELD_NOT_FOUND로 정의됩니다. 이미 알아 낸 것은 테이블에없는 필드 이름의 사용을 시도한 것을 나타냅니다.