ArcGIS Engine如何许可初始化
在main()主函数中加了代码:ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCode.EngineOrDesktop);程序出错:对 COM 组件的调用返回了错误 HRESULT E_FAIL。
然后再main()主函数中又加上了如下代码:
ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCode.EngineOrDesktop);
#region 初始化许可
IAoInitialize m_AoInitialize = new AoInitializeClass();
esriLicenseStatus licenseStatus = esriLicenseStatus.esriLicenseUnavailable;
licenseStatus = m_AoInitialize.Initialize(esriLicenseProductCode.esriLicenseProductCodeArcInfo);
if (licenseStatus == esriLicenseStatus.esriLicenseNotInitialized)
{
MessageBox.Show(没有esriLicenseProductCodeArcInfo许可!);
Application.Exit();
}
#endregion
licensecontrol属性勾选了第一个Engine,程序没有报错,但是运行过程中程序自己停止运行,得出的数据结果没有内容。。
然后再main()主函数中又加上了如下代码:
ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCode.EngineOrDesktop);
#region 初始化许可
IAoInitialize m_AoInitialize = new AoInitializeClass();
esriLicenseStatus licenseStatus = esriLicenseStatus.esriLicenseUnavailable;
licenseStatus = m_AoInitialize.Initialize(esriLicenseProductCode.esriLicenseProductCodeArcInfo);
if (licenseStatus == esriLicenseStatus.esriLicenseNotInitialized)
{
MessageBox.Show(没有esriLicenseProductCodeArcInfo许可!);
Application.Exit();
}
#endregion
licensecontrol属性勾选了第一个Engine,程序没有报错,但是运行过程中程序自己停止运行,得出的数据结果没有内容。。
1 个回复
刘峥 - ArcGIS多面手
赞同来自:
用代码或license control控件来初始化许可只选其中一种方法即可。如果使用license control控件来初始化许可,在列表左侧单选想要使用的许可即可,不可多选,否则只会识别比较靠上的第一个许可。
要回复问题请先登录或注册