ArcEngine 개발은 구덩이가 발생

환경 ArcGIS10.1 Oracle11g

1, 코드가 성공적으로 기능 데이터 세트를 생성하지만, 새로 고침 오라클 데이터베이스는 나오지 않습니다. 해결 방법 : 검사 인해 호출하지 않습니다로 stopEditing (true)를 만든 후 후면 IWorkSpaceEdit.startEditing의 코드의 섹션, 그것은 인식 실패했습니다 것을 발견했다. 앞서 언급 한 startEditing 코드의 구현입니다.

2,更新数据报ORA-20085 삽입 공간 참조 SRID 300026 SDE.REDLINERANG_A.SHAPE는 300,005 공간 참조 SRID 등록 일치하지 않는

ORA-06512를 : 라인 1986 "SDE.ST_DOMAIN_METHODS"에서

해결책 : 바에서 룩업 테이블 sde.ST_SPATIAL_REFERENCES 후 SRID 300,005은 참조 시스템 불명이고, SRID 300,026는 로컬 좌표계에 정의된다 추측이 데이터 처리 데이터에 지정된 직접 복사 좌표계 알 hm_point를 생성하도록 설정 라이브러리는 다음 시스템 SRID 300,026 있지만 SDE 클래스 라이브러리 좌표 SDE 기능 세트에 배치 요소는 300,005로 특징 데이터 세트 SRID 좌표된다 SRID 300,005로 등록 SDE 좌표 SDE 라이브러리 후 300026 SRID. 현재의 해결책은 : 수입 라이브러리 특징 데이터 방식은 생성 된 데이터를 처리 SDE 수입 세트. 또 다른 방법은, A는 처리 된 데이터 세트를 생성하기 위해 대응하는 좌표계하고 복사 및 SDE 라이브러리를 붙여 설정.

삭제 기능은 데이터 세트가 아닌 내부 기능 클래스를 삭제합니다 사용하는 경우 3. 기능 클래스는 삭제 통과 할 필요가있다.

4, MXD 문서 당신은 좌표 시스템을 설정합니다.

 

5, 데이터베이스, 공간 제한을 초과하는 오류 ORA-29855 ORA-01536 XX 테이블 공간에 데이터를 복사하는 복사 GP ArcSDE는 도구를 호출합니다. 테이블 스페이스를 설정 한 현재 사용자의 사용 할당량에 발견하면 무제한 사용으로 변경할 수 있습니다.  skate_ts에 사용자 스케이트 할당량 제한을 변경하는 행위  

http://blog.csdn.net/lrh_079/article/details/17001453

6, 액세스 axpagelayoutcontrol.printer는 null를 얻을. 해결 방법 : 컴퓨터에 아무런 기본 프린터, 당신은 기본 프린터를 설정할 수 있습니다. 마이크로 소프트 XPS 문서 작성자가 기본 프린터로 설정 될 수있다.

도 7은, 차분 Axcontrols 및 maptcontrol : 10.2, ESRI.Arcgis.Controls에 존재 maptcontrol 인터페이스이고, Axcontrols 제어한다.

참조 https://blog.csdn.net/crury/article/details/5624525를

주어진 공식 설명은 ESRI에서이다 :

Axcontrols .NET 패키지는 COM 컨트롤 어셈블리의 구성 요소에 대응하는 구성 요소에 해당하는 경우에 사용하고, ESRI.Arcgis.Axcontrols의 ESRI.Arcgis.Controls 네임 스페이스 네임 스페이스를 추가해야합니다. 두 AE는 모든 구성 요소가 포함되어 있습니다.

마스터의 설명 :

AxMapControl 그것이 CCW의 .NET 래퍼 제어 (COM 호출 가능 래퍼)가로드 전역 어셈블리 (: / WINDOWS / 조립 C에서 기본 디렉토리)에 통해 COM 구성 요소이며, 닷넷 구성 요소입니다. ESRI의 MapControl이는 ArcGIS 빈 파일 설치 디렉토리가로드됩니다. 주요 차이점은 레지스트리 (후자 COM)에 등록하는 것이고, 다른 하나는 (새로운 기술의 .NET 기능이 놓여있는 GAC에 직접로드)를 레지스트리에 등록이 필요하지 않습니다.
------- -------------- 
저자 : crury의 
소스 : CSDN의 
원래 : HTTPS : //blog.csdn.net/crury/article/details/5624525 
저작권 :이 문서에서는 재현 블로거 원래 기사입니다 보웬 링크를 첨부 해주세요!

8 AxMapControl 전송

http://blog.sina.com.cn/s/blog_488e2b5b0100ztxr.html

문제 설명 :

AxMapControl 사용 다른 클래스에 전달.

해결 방법 원래 프로그램 :( 1)

공공 무효의 FUNC (IMapControl2 mapControl)

{

   ...

}

주요 함수 호출 : FUNC ((IMapControl2) this.AxMapControl1.Object);

 

일반 프로그램보다도 실제로 해결했다,하지만 문제는 호출 할 때마다, 모든 캐스팅, 사용자에 대한 부담해야한다는 것입니다.

해결 방법 3 : (완벽한 솔루션)

1. 추가 추가 AXControl 참조 클래스 (안주의 AxMapControl)

클래스 기능 :

공공 무효의 FUNC (AxControl axMapControl)

{

    IMapControl2 mapControl = (IMapControl2) axMapControl.Object;

   ...

}

주요 함수 호출 :

FUNC (this.AxMapControl1)

 

 

 

 

추천

출처blog.csdn.net/Chen_cs/article/details/52688122