ArcGis10.0常见错误
来自:http://www.cnblogs.com/shenchao/p/3584185.html
1、 问题: Arcgis10.0 组件初始化失败
解决方法: ESRI.ArcGIS.RuntimeManager.BindLicense(ESRI.ArcGIS.ProductCode.EngineOrDesktop);该语句需要引用ESRI.ArcGIS.Version类库
2、 问题: 无嵌入互操作类
解决方法: 嵌入互操作类 改为 false
在VS2010中,使用.NETFramework 4.0环境时,ESRI的类库嵌入式互操作属性需要设置为False。
3、向axMapControl控件中添加shp报错
问题:向axMapControl控件中添加shp时,出现了“The specified path is invalid”这个错误,仔细检查代码并无错误;而从文件添加Layer则可以,但ToolBarControl无显示。
解决方法:添加axLicenseControl 控件
4、 问题:
解决方法:
//清除数据集前必须先刷新
activeView.PartialRefresh(esriViewDrawPhase.esriViewGeoSelection,mapControl.get_Layer(0),null);
mapControl.Map.ClearSelection();
activeView.PartialRefresh(esriViewDrawPhase.esriViewGeoSelection, mapControl.get_Layer(0), null);
1、SDE认证问题: 使用ArcGIS.KeyGen.exe生成一个epp文件 方法:-->server-->All-->拷贝并保存为*.epp文件。认证时加载该文件即可认证完毕。
2、实例问题: 必须是这样的:"sde:sqlserver:SHENC-PC\\SQLEXPRESS"
3、可选 pPS.SetProperty("AUTHENTICATION_MODE", "DBMS");
6、找不到ESRI.ArcGIS.Utility;的引用
在10.0中改为ESRI.ArcGIS.ADF.Local和ESRI.ArcGIS.ADF.Connection.Local
Microsoft.Win32.RegistryKey regKey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey("SOFTWARE\\ESRI\\Desktop10.0", true);
IAoInitialize m_AoInitialize = new AoInitializeClass();
licenseStatus = m_AoInitialize.Initialize(esriLicenseProductCode.esriLicenseProductCodeArcInfo);
licenseStatus = m_AoInitialize.CheckOutExtension(esriLicenseExtensionCode.esriLicenseExtensionCodeSpatialAnalyst);
问题:feature.Delete() 时,对 COM 组件的调用返回了错误 HRESULT E_FAIL
解决方法 : 把featureCursor = featureclass.Search(null, true); //共享内存
改成featureCursor = featureClass.Search(null, false); //不共享内存
1
2
3
4
5
6
7
8
9
10
11
|
//清除图层原有实体对象 //featureCursor = featureClass.Search(null, true); featureCursor = featureClass.Search( null , false ); //不共享内存 IFeature feature; feature = featureCursor.NextFeature(); while (feature != null ) { feature.Delete(); //featureCursor.DeleteFeature(); feature = featureCursor.NextFeature(); } |
Use the ArcGIS Administrator to view the software availability,change the license manager,or switch the ArcGIS software product.