1. 程式人生 > >Arcgis Engine 報錯:異常來自HRESULT:0x80040228

Arcgis Engine 報錯:異常來自HRESULT:0x80040228

time man space des blog span manager 問題 pro

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);

Arcgis Engine 報錯:異常來自HRESULT:0x80040228