Arcgis Engine 报错:异常来自HRESULT:0x80040228

AE开发中打开shp经常会用到以下的代码:

IWorkspaceFactory testfactory = new ShapefileWorkspaceFactory();
IWorkspace testwork = testfactory.OpenFromFile(foldername, 0);

之前用的版本vs2015+AE10.2.2一直好好的,换成AE10.4版本之后报错:异常来自HRESULT:0x80040228。

这个错误基本上是axcontrol控件、AE许可方面的问题。看了网上的解决办法,大多数是以下两种方法:

1、界面上添加axcontrol控件(我的已有)

2、program页面里添加:

using ESRI.ArcGIS.esriSystem
IAoInitialize m_aoinitialize = new AoInitializeClass();
m_aoinitialize.Initialize(esriLicenseProductCode.esriLicenseProductCodeArcInfo);

试了之后也是无效的。最终参考了以下两篇文章,验证是有效的。

https://blog.csdn.net/qq_29176825/article/details/84864939

https://www.cnblogs.com/liweis/p/8675903.html

做了修改后的终极方法:在program页面里添加:

ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCode.EngineOrDesktop);
//以下为新增的代码 IAoInitialize aoInit = new AoInitializeClass();
aoInit.Initialize(esriLicenseProductCode.esriLicenseProductCodeArcServer);

 

上一篇:地理信息系统(GIS)系列——ArcGIS中的各种图层


下一篇:Android数据适配器(Adapter)优化:使用高效的ViewHolder