首页 > 数据库

ArcGIS Engine产品开发中的许可文件初始化

时间:2009-04-20 09:39:31  作者:jingdiankao  我要投稿
Linux初探欢迎您的投稿,投放方法请点击这里查看,我们会定期赠送精美小礼品给优秀的投稿作者。海纳百川 取则行远!LinuxGoo欢迎您的到来。
ArcGIS Engine产品以及相应的产品许可正常安装以后,为什么还要在程序中做许可文件的初始化的工作?具体怎么实现。 解答 ArcGIS Engine developer kit产品以及相应......

ArcGIS Engine产品以及相应的产品许可正常安装以后,为什么还要在程序中做许可文件的初始化的工作?具体怎么实现。
解答
ArcGIS Engine developer kit产品以及相应的产品许可安装以后,只是为你的应用程序实现许可允许的功能提供了可能性,要想真的使得你的应用程序拥有这些功能,你还需要做一个许可文件的初始化工作。
注意:如果不做这个初始化工作,你有可能会在实现某些功能时碰到你没有相应的许可的提示。
这个许可文件的初试化工作需要在你的应用程序的入口处实现。下面是c#的初始化的代码示例

using ESRI.ArcGIS.esriSystem;

namespace LicenseInitializer
{
public class LicenseInitializer
{
private IAoInitialize m_AoInitialize = new AoInitializeClass();

public bool InitializeApplication()
{
bool bInitialized = true;

if (m_AoInitialize == null)
{
System.Windows.Forms.MessageBox.Show("Unable to initialize. This application cannot run!";
bInitialized = false;
}

//初始化应用程序
esriLicenseStatus licenseStatus = esriLicenseStatus.esriLicenseUnavailable;

licenseStatus = CheckOutLicenses(esriLicenseProductCode.esriLicenseProductCodeEngine);
if (licenseStatus != esriLicenseStatus.esriLicenseCheckedOut)
{
licenseStatus = CheckOutLicenses(esriLicenseProductCode.esriLicenseProductCodeArcView);
if (licenseStatus != esriLicenseStatus.esriLicenseCheckedOut)
{
licenseStatus = CheckOutLicenses(esriLicenseProductCode.esriLicenseProductCodeArcEditor);
if (licenseStatus != esriLicenseStatus.esriLicenseCheckedOut)
{
licenseStatus = CheckOutLicenses(esriLicenseProductCode.esriLicenseProductCodeArcInfo);
if (licenseStatus != esriLicenseStatus.esriLicenseCheckedOut)
{
System.Windows.Forms.MessageBox.Show(LicenseMessage(licenseStatus));
bInitialized = false;
}
}
}
}

return bInitialized;
}

public void ShutdownApplication()
{
if (m_AoInitialize == null) return;

//关闭 AoInitilaize对象
m_AoInitialize.Shutdown();
m_AoInitialize = null;
}

private esriLicenseStatus CheckOutLicenses(esriLicenseProductCode productCode)
{
esriLicenseStatus licenseStatus;

//是否产品是可能的
licenseStatus = m_AoInitialize.IsProductCodeAvailable(productCode);
if (licenseStatus == esriLicenseStatus.esriLicenseAvailable)

如果您需转载 ArcGIS Engine产品开发中的许可文件初始化,请注明来自LinuxGoo.com,其版权归原作者所有。请广大网友留言时遵纪守法,使用文明用语。如果您在应用中有什么问题,请在下面留言,我们会尽快解答。
来顶一下
近回首页
返回首页
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
相关文章
栏目热门