用代码初始化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 ...
随机推荐
- load xml with xls
you can study xls language in the below link : http://www.w3schools.com/xsl/xsl_languages.asp CSS = ...
- 最短路+状压DP【洛谷P3489】 [POI2009]WIE-Hexer
P3489 [POI2009]WIE-Hexer 大陆上有n个村庄,m条双向道路,p种怪物,k个铁匠,每个铁匠会居住在一个村庄里,你到了那个村庄后可以让他给你打造剑,每个铁匠打造的剑都可以对付一些特定 ...
- DockerFile一键搭建环境(一)
点击查看文件详情 FROM centos:7 COPY --chown=root:root nginx /etc/init.d/ Run set -ex \ && yum insta ...
- Codeforces Round #534 (Div. 2) D. Game with modulo 交互题
先二分一个区间,再在区间里面二分即可: 可以仔细想想,想明白很有意思的: #include<iostream> #include<cstdio> #include<alg ...
- 3.Best Time to Buy and Sell Stock(买卖股票)
Level: Easy 题目描述: Say you have an array for which the ith element is the price of a given stock ...
- docker上安装eslaticsearch
一 elasticsearch安装 1 查找镜像: docker search elasticsearch 可以看到如下截图; 2 拉取镜像 docker pull elasticsearch 我并没 ...
- AngularJs ng-repeat解决循环对象出现重复项报错的问题
问题:ng-repeat 的循环对象是不能出现重复项的,所以如果有重复的就会报错,应该是 key value的问题吧,不是很了解内部运行机制:经过查询发现 在 循环后面加上 track by $i ...
- P3970 [TJOI2014]上升子序列
传送门 DP 十分显然的DP,但是不好写 设 f[ i ] 表示以第 i 个数作结尾时的方案数,原序列为 a 如果不考虑相同的序列: 那么转移就是 Σ f[ j ] (0< j < i & ...
- poj3713 Transferring Sylla 枚举+tarjan判割点
其实就是判断是否为三连通图 三连通图指的是去掉3个点就不连通的图,但是并没有直接求三连通的算法.著名的Tarjan算法可以求解连通和割点,再枚举删除一个点就能达到三连通的目的. 先看用例2,是由用例1 ...
- hdu2553 N皇后问题(dfs+回溯)
N皇后问题 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...