ArcEngine+C# 程序发布的问题

ggggggo 2009-11-14 07:58:01
做了一个ArcEngine+C#的小程序,可是发布出来后,装到别的机子上总会出问题,运行到显示Arcgis界面时提示:

Warning: This application has not been initialized with an ESRI license and will not function correctly.

那台电脑上安装了Arcgis desktop并且License注册OK,打开mxd文件正常,就是运行我的程序的时候出错。。这是怎么回事呢?是我的程序里什么地方的License设置不对吗?

要怎么解决呢?
...全文
887 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
youme_zx 2012-08-29
  • 打赏
  • 举报
回复
谢谢楼主,学习了一下
  • 打赏
  • 举报
回复
只要打开服务即可
coldwait 2011-07-21
  • 打赏
  • 举报
回复
我也遇到了。。。。
Felixlovechina 2011-03-20
  • 打赏
  • 举报
回复
谢谢你!问题虽然很简单但对于新手来说真的很需要。
文明游戏 2011-02-24
  • 打赏
  • 举报
回复
LZ好样的
hulei_accp 2010-05-05
  • 打赏
  • 举报
回复
using ESRI.ArcGIS.esriSystem;

namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)
{
IAoInitialize m_aoinitialize = new AoInitializeClass();
m_aoinitialize.Initialize(esriLicenseProductCode.esriLicenseProductCodeArcInfo);
}
}
}

我加上这个后,就没有出现这个“Warning: This application has not been initialized with an ESRI license and will not function correctly. ”提示了。
hulei_accp 2010-05-05
  • 打赏
  • 举报
回复
12121
ggggggo 2009-11-16
  • 打赏
  • 举报
回复
原来CSDN上高手都这么低调,如果是用的肯定知道怎么解决,可就是没有人说一下。失望啊,自己解决了,结帖了。

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)
{

//用相应的许可文件进行初始化
licenseStatus = m_AoInitialize.Initialize(productCode);
}
return licenseStatus;
}

private string LicenseMessage(esriLicenseStatus licenseStatus)
{
string message = "";

//没有许可
if (licenseStatus == esriLicenseStatus.esriLicenseNotInitialized)
{
message = "You are not licensed to run this product!";
}
//许可正在使用
else if (licenseStatus == esriLicenseStatus.esriLicenseUnavailable)
{
message = "There are insuffient licenses to run!";
}
//未知错误
else if (licenseStatus == esriLicenseStatus.esriLicenseFailure)
{
message = "Unexpected license failure! Please contact your administrator.";
}
//已经初始化
else if (licenseStatus == esriLicenseStatus.esriLicenseAlreadyInitialized)
{
message = "The license has already been initialized! Please check your implementation.";
}
return message;
}
}
}
ggggggo 2009-11-15
  • 打赏
  • 举报
回复
安装了runtime并已注册,还是出错Warning: This application has not been initialized with an ESRI license and will not function correctly.

估计是程序里哪个地方license设置有问题。等高人指点
Cynthia_zxx 2009-11-14
  • 打赏
  • 举报
回复
也出现这个错误啊!顶
Cynthia_zxx 2009-11-14
  • 打赏
  • 举报
回复
我也不会,支持,学习!

2,142

社区成员

发帖
与我相关
我的任务
社区描述
它是一种特定的十分重要的空间信息系统。它是在计算机硬、软件系统支持下,对整个或部分地球表层(包括大气层)空间中的有关地理分布数据进行采集、储存、管理、运算、分析、显示和描述的技术系统。
社区管理员
  • 地理信息系统
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧