用代码初始化AE控件许可
当AE二次开发与其他平台一起使用的时候,有时候会不方便加LicenseControl控件,需要用代码初始化许可:
在构造函数中初始化许可:
public Form1()
{ InitializeComponent();
ESRI.ArcGIS.esriSystem.IAoInitialize AoIni = new AoInitializeClass();
bool Successful;//返回是否初始化成功
esriLicenseProductCode production = esriLicenseProductCode.esriLicenseProductCodeArcInfo;//这里选择的是ArcInfo
esriLicenseStatus status = AoIni.IsProductCodeAvailable(production);
if (status == esriLicenseStatus.esriLicenseAvailable)
{
status = AoIni.Initialize(production);
if (status == esriLicenseStatus.esriLicenseAlreadyInitialized || status == esriLicenseStatus.esriLicenseCheckedOut)
{
//SpatialAnalyst
esriLicenseExtensionCode extension1 = esriLicenseExtensionCode.esriLicenseExtensionCodeSpatialAnalyst;
esriLicenseStatus status1 = AoIni.IsExtensionCodeAvailable(production, extension1);
if (status1 == esriLicenseStatus.esriLicenseAvailable)
{
status1 = AoIni.CheckOutExtension(extension1);
} //DataInteroperability
esriLicenseExtensionCode extension2 = esriLicenseExtensionCode.esriLicenseExtensionCodeDataInteroperability;
esriLicenseStatus status2 = AoIni.IsExtensionCodeAvailable(production, extension2);
if (status2 == esriLicenseStatus.esriLicenseAvailable)
{
status2 = AoIni.CheckOutExtension(extension2);
} //if (status1 == esriLicenseStatus.esriLicenseCheckedOut && status2 == esriLicenseStatus.esriLicenseCheckedOut)
if (status2 == esriLicenseStatus.esriLicenseCheckedOut)
{
Successful = true;
}
}
}
}
以上代码相当于添加LicenseControl控件,并设置如下属性:

后记:用代码初始化许可的话,记得在程序关闭时添加如下代码,否则程序进程在程序关闭后还存在。
public static void ShutDown()
{
ESRI.ArcGIS.ADF.COMSupport.AOUninitialize.Shutdown();
AoInit.Shutdown(); //AoInit为初始化许可时定义的ESRI.ArcGIS.esriSystem.IAoInitialize AoIni
}
用代码初始化AE控件许可的更多相关文章
- Android在代码中设置控件的drawableLeft,drawableRight,drawableTop,drawableBottom。
根据业务的需要,要在代码中设置控件的drawableLeft,drawableRight,drawableTop,drawableBottom属性. 我们知道在xml中设置的方法为:android:d ...
- delphi 动态绑定代码都某个控件
delphi 动态绑定代码都某个控件 http://docwiki.embarcadero.com/CodeExamples/Berlin/en/Rtti.TRttiType_(Delphi)Butt ...
- 继承自TWinControl的控件不能在设计期间接受子控件,用代码设置子控件却可以(它的自绘是直接改写PaintWindow虚函数,而不是覆盖Paint函数——对TWinControl.WMPaint又有新解了)
这个控件直接继承自TWinControl,因此不是改写Paint;函数,而是直接改写PaintWindow虚函数,它在VCL框架里被直接调用,直接就把自己画好了(不用走给控件Perform(WM_Pa ...
- 魔改——MDI多视图模板Tab/标签页 初始化/操作控件
==================================声明================================== 本文原创,转载在正文中显要的注明作者和出处,并保证文章的完 ...
- Silverlight代码编写对控件的PlaneProjection.RotationY属性控制动画
Canvas c; void btnDraw_Click(object sender, RoutedEventArgs e) { Storyboard story = new Storyboard() ...
- iOS开发之通过代码自定义一个控件
关于控件的继承关系(面试重点): (1)所有的控件都继承自UIView. (2)能监听事件的都是先继承自UIControl,UIControl再继承自UIView.比如UIButton. (3)能整体 ...
- 【WPF】C#代码动态添加控件的Margin属性
需求:一组按钮的数据是从服务器中Json数据发过来的,需要根据这个Json数据动态地添加这组按钮. 工具:使用http://www.newtonsoft.com/json来解析Json. 过程:C#代 ...
- IOS 制作动画代码和 设置控件透明度
方式1: //animateWithDuration用1秒钟的时间,执行代码 [UIView animateWithDuration:1.0 animations:^{ //存放需要执行的动画代码 s ...
- C#代码中设置 控件的触发器
Style style = new Style(); style.TargetType = typeof(TextBox); MultiDataTrigger trigger = new MultiD ...
随机推荐
- P2105 K皇后
题意:$n*m$棋盘放置k个皇后,问几个格子不被攻击 1≤n,m≤20000,1≤k≤500 开set判重暴力$O(n*k)$然而,setMLE了QAQ 正解确实是$O(n*k)$的 以hang[i] ...
- springboot整合dubbo注解方式(三)
笔者用自己代码测试时候发现这个版本信息,可以没有,也可以制定一个就可以了,没有太大的问题,只是需要注意引入的依赖问题,两个jar与一个jar的问题, 然后就是接口公共依赖问题,案例是把我找的几个案例进 ...
- AngularJs ng-repeat解决循环对象出现重复项报错的问题
问题:ng-repeat 的循环对象是不能出现重复项的,所以如果有重复的就会报错,应该是 key value的问题吧,不是很了解内部运行机制:经过查询发现 在 循环后面加上 track by $i ...
- Mysql 在DOS窗口下的操作
1.登录 (1)首先cd 进入mysql对应的安装目录 (2)再输入mysql -u root -p 2.重启 https://blog.csdn.net/u012385190/article/det ...
- java mybatis学习一
1.引入maven包 和 导入 sqljdbc包 <dependency> <groupId>org.apache.ibatis</groupId> <art ...
- restframework 的一些操作
路飞学城项目: 1 Vue 2 restframework框架(一周) 3 学城项目(一周-两周) day98 1 CBV(class based view) 与 FBV(function based ...
- springMVC从前端接受boolean类型的属性失败的问题
springMVC从前端接收到的实体又一个boolean类型的属性,发现不管前端怎么操作,后台接收到的值都是false. 问题出现原因: eclipse在给实体属性生成getter和setter的时候 ...
- google chrome浏览器自动填充解决方案
在chrome浏览器中,浏览器对于[1]type为password和text的.[2]带有name或者id属性的<input>标签会有自动填充表单功能,虽然会给用户记住密码带来一定的便利, ...
- 问题:eclipse中线程编程编译报错,undefined reference to 'pthread_create'的解决方法(已解决)
问题描述: 在Ubuntu系统中,使用eclipse CDT集成开发环境编写pthread程序,编译时,pthread_create不通过,报错信息是: undefined reference to ...
- getter与setter
var obj = { get a() { return 2; }, get c() { return 34 } } Object.defineProperty( obj, 'b', { get: f ...