博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ArcEngine中License权限等级更改的问题
阅读量:6495 次
发布时间:2019-06-24

本文共 809 字,大约阅读时间需要 2 分钟。

曾经认为自己对于ArcGIS 开发许可问题比较理解了,并小结在《》中。

01.权限问题

今天在调用GP时失败(插值式开发,使用的是他人框架),因为需要Advanced级别权限。有两点可以证明是权限不足:一是我在新建项目中测试成功,说明代码参数没问题;二是在问题框架调用clip(只需Basic级别)成功。更改变我的人生观念的是:同事们都说,既然权限不足,就在调用功能是再次初始化相应权限!在我的印象中,权限一旦初始化,就不可更改,除非结束程序。

02.还原真相

为了确认事实真相,我自己写了代码进行测试,在程序中更改权限是无效的。使用IAoInitialize接口进行初始化许可的原则:Initialize方法只能调用一次,多余无效,返回esriLicenseAlreadyInitialized ,LicenseControl勾选多个许可也是无效的。即在程序运行过程中,不能再次更改许可等级

在ESRI官网上也找到:"Once an application has been initialized with a license, it cannot be reinitialized; an application is initialized with a license for the duration of its life. For example, you can't write an application that starts up with an ArcView license and later switches to ArcEditor."

03.修改权限

在修改已有框架的权限时,虽然有源代码,但更改LicenseControl或使用AoInitialize无效,打开程序被强制关闭,并报错-42,原来是OcxState作怪,必须全部手动删除,要么只有删除控件,全部重新拖放并布局。

转载地址:http://mokyo.baihongyu.com/

你可能感兴趣的文章
迭代器和生成器
查看>>
Vue 组件之间传值
查看>>
指向方法之委托(一)
查看>>
2013 Multi-University Training Contest 3 部分解题报告
查看>>
Linux 网桥配置命令:brctl
查看>>
jQuery中异步操作对象Deferred
查看>>
MVC设计模式
查看>>
在团队项目遇到的问题及解决方法。
查看>>
springcloud demo---config-client
查看>>
Django设置联合唯一约束 -- migrate时报错处理
查看>>
Java LeetCode 1.Two Sum
查看>>
前端面试题:css相关面试题
查看>>
shell命令的高级使用之---选择性copy
查看>>
最长回文子序列-----动态规划
查看>>
Vue国际化实现
查看>>
设计模式:单例模式
查看>>
FLASH位宽为8、16、32时,CPU与外设之间地址线的连接方法
查看>>
双网卡一般情况不能有两个网关 (转)
查看>>
xshell 远程连接Linux
查看>>
Linux计划任务及压缩归档(week2_day1)--技术流ken
查看>>