ESRI.ArcGIS.AnalysisTools的使用

这几天一直纠结一个问题,就是在AE下使用ESRI.ArcGIS.AnalysisTools中的工具(例如:泰森多边形的建立等)无法得到结果。例如使用以下代码: Geoprocessor gp = new Geoprocessor(); gp.OverwriteOutput = true; ESRI.ArcGIS.AnalysisTools.CreateThiessenPolygons CTP = new CreateThiessenPolygons(@"D:\AEtestyao\Data\school.shp", "D:\AEtestyao\Data\CTP.shp"); CTP.fields_to_copy = "ONLY_FID"; gp.Execute(CTP, null);开始一直得不到结果,然后上网查了很久后终于解决了。一般都会是由于工具未注册导致(the tool is not licensed)。解决方案为:在主窗体的初始化函数中加入代码,如下:public Mainform() { #region 初始化许可 IAoInitialize m_AoInitialize = new AoInitializeClass(); esriLicenseStatus licenseStatus = esriLicenseStatus.esriLicenseUnavailable; licenseStatus = m_AoInitialize.Initialize(esriLicenseProductCode.esriLicenseProductCodeArcInfo); //默认第一个为有效地,之后无效,此级别最高,可用绝大多数功能 //licenseStatus = m_AoInitialize.Initialize(esriLicenseProductCode.esriLicenseProductCodeEngine);级别最低 #endregion InitializeComponent(); }关键代码一定要放正确,放到InitializeComponent()后会无效。原因说明下:系统搭建时,,axLicenseControl默认使用的是esriLicenseProductCodeEngine,这个的级别是最低的,导致ESRI.ArcGIS.AnalysisTools中的很多功能无法使用(而ESRI.ArcGIS.AnalysisTools得Buffer可用),所以要重新设置。注意:在axLicenseControl上进行右键查属性设置无法使设置生效,故只能加代码。

版权声明:本文为博主原创文章,未经博主允许不得转载。

生活会变成什么样子?正因为时光流逝一去不复返,

ESRI.ArcGIS.AnalysisTools的使用

相关文章:

你感兴趣的文章:

标签云: