ArcEngine开发中“ERROR 010096"错误,许可问题

 时间:2026-02-16 15:21:15

1、首先看一下错误,如图,在用vs开发时,调试时报错:“ERROR 010096: 当前没有或未启用 Spatial Analyst (或其他***)许可。”

ArcEngine开发中“ERROR 010096

2、很明显错误原因是缺少许可,那就奇怪了,有时候明明已经添加了许可空间LicenseControl,如图。也在此许可控件的属性(右键->属性)中设置了许可扩展,为什么还是没有许可,原因是可能许可服务没有启动成功,通过代码来设置许可更加稳定。解决办法如下:

ArcEngine开发中“ERROR 010096

3、第一步,添加许可控件,可以在任何一个窗体上添加,前提是安装好了开发环境。在工具箱中点击许可控件,如图:

ArcEngine开发中“ERROR 010096

4、第二步,打开自己项目的程序入口program.cs,在Main()函数里面写上绑定许可的代码,有三种写法:

ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCode.Desktop),这是只安装了开发包 ArcObjects SDKs for Mcrosoft .NET Framework,没有完成ArcGIS Engine的Runtime的安装;

或ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCode.EngineOrDesktop);  这是安装了Desktop和Engine的Runtime的写法;

或ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCode.Engine),这是只安装了ArcEngine没有安装Desktop的写法。

根据自己的情况来写就行了。如图

ArcEngine开发中“ERROR 010096

5、第三步,再检查许可空间LicenseControl的属性中是否勾选了相关模块的许可,如图所示(我这里是SpatialAnalyst,如果你用到了别的模块,要勾上许可):ArcGIS Engine是最基本的,右边的扩展是根据你所开发的内容来定,如果没有用到这些功能,只勾选左边的ArcGIS Engine即可。

ArcEngine开发中“ERROR 010096

6、第四步,为了保证每次启动程序时不会出现没有许可的问题,在代码中再绑定一次,写出许可模块扩展的代码,在绑定了许可后的地方写上如下代码:

IAoInitialize _IAoInitialize = new AoInitializeClass();  

_IAoInitialize.Initialize(esriLicenseProductCode.esriLicenseProductCodeEngine);  

_IAoInitialize.CheckOutExtension(esriLicenseExtensionCode.esriLicenseExtensionCodeSpatialAnalyst);  

以本人的为例,如图:

ArcEngine开发中“ERROR 010096

7、第五步,这样就完成了许可的绑定和扩展模块许可的设置了,重新运行程序,就不会报错了。OK

  • Arcgis栅格计算器常见错误及解决办法
  • arcgis中如何插入比例尺
  • arcgis图例怎么添加教程
  • ArcGIS矢量数据与栅格数据相互转换
  • arcgis按掩膜提取裁剪影像
  • 热门搜索
    身临其境的意思 车水马龙的意思解释 紫薯的功效和作用 td是什么意思 苍茫的意思 被执行人是什么意思 买电脑要注意什么 形同陌路什么意思 短pr间期是什么意思 栖息的意思