[转载]ArcGIS Engine 10开发环境的一些常见问题

许多版友在刚刚使用ArcGIS 10做开发的时候,都会遇到这样那样的问题。在担任实习版主的这一个多月里,看到了这么几个与开发环境相关的问题,重复被提到相当多,于是我就做了这个FAQ。

Q:哪儿有10的ArcGIS Engine SDK?
A:ArcGIS 10不需要安装单独的Engine开发包,在Desktop的镜像中,安装ArcObjects SDK就可以使用Engine的那些控件做开发了。只在部署的时候还需要Engine Runtime。


Q:为什么在9.3中执行正常的代码,在10中会执行出错,抛出异常 COMException
A:是如下图这个异常么?

10新增了一个dll,ESRI.ArcGIS.Version,添加这个引用。然后在Main方法中,在窗体启动之前,添加这么一行代码:
  1. RuntimeManager.Bind(ProductCode.EngineOrDesktop);
复制代码
重新编译执行即可。


Q:为什么以前正常的代码,现在都编译都通不过了,提示什么“无法嵌入互操作类型...

A:你用的是Visual Studio 2010和C# 4吧?如果是,那就对了。这个问题和Engine本身无关。
这是C# 4对COMInterop的一个改进,把 创建CoClass时的类名的Class后缀去掉即可 。不允许用CoClass本身,而必须用相应的接口来创建对象。
比如,
  1. IPoint p = new PointClass()
复制代码
改为:
  1. IPoint p = new Point()
复制代码
详细的解释可以看这里的: 嵌入的互操作类型(如果尝试使用 CoClass 创建嵌入的 COM 类型的实例,则会导致编译器错误)


Q:为什么以前正常的代码,现在一运行就报错,抛出异常BadImageFormatException


A:你的操作系统是64位的Windows吧?可是ArcGIS现在只有32位的,所以必须用X86平台生成项目。
打开项目属性,在“生成”选项卡中找到目标平台,把Any CPU改为x86,重新生成即可。


Q:我要用ArcGIS Engine 10,一定要用Visual Studio 2010吗?

A: 不一定, 不论什么版本的Visual Studio和什么版本ArcGIS Engine SDK,都是可以组合的。
因为ArcGIS Engine的SDK是一些COM组件,而C#、VB、VC++对COM的支持一直是有的。
注:Engine SDK可能会检查系统已安装的VisualStudio版本,比如ArcObjects 10 SDK(内含Engine)只在已有10或者08SP1的系统完成安装。当然,如果有办法绕过去,就没问题了。


可能你装上之后工具箱里面的神马MapControl,SceneControl、LicenseControl都没有出来。
这个没关系,添加工具箱项,找到Engine的dll,添加进来,一切Ok

这个问题还是补充地具体一些吧:
1、在VS工具箱内右键,添加选项卡,取名ArcGIS Windows Form
2、在新选项卡上右键,选择项...
3、点浏览,找到 ESRI.ArcGIS.AxControls.dll (缺省安装在" c:Program FilesArcGISDeveloperKit10.0DotNet ESRI.ArcGIS.AxControls.dll"),打开。


4、勾选中新出现的那几个ArcGIS的控件,点确定。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ArcGISEngine是一个用于开发地理信息系统(GIS)应用程序的软件开发工具包(SDK)。它提供了一组功能强大的API,可以用于构建基于地理空间数据的应用程序和插件。 要开发ArcGISEngine插件,您可以按照以下步骤进行操作: 1. 安装ArcGIS开发环境:首先,您需要安装ArcGIS开发环境。这包括ArcGIS Engine和相关的开发工具。您可以从Esri官方网站下载并安装ArcGIS开发环境。 2. 创建一个新的插件项目:使用您选择的集成开发环境(IDE),如Visual Studio,创建一个新的插件项目。 3. 配置项目引用:确保您的插件项目引用了ArcGISEngine的相关程序集。这些程序集包含了在插件中使用ArcGISEngine API所需的类和方法。 4. 编写插件代码:使用ArcGISEngine API,您可以编写插件代码来实现您想要的功能。您可以使用地图控件、图层、符号化、空间分析等功能来操作地图数据和执行各种操作。 5. 调试和测试:使用IDE中提供的调试工具,对插件进行调试和测试以确保其正确运行。您可以模拟不同的场景和用户操作来测试插件的性能和稳定性。 6. 部署和发布:完成插件的开发和测试后,您可以将其部署到目标环境中。这可能涉及将插件文件复制到特定的目录,并在ArcGIS应用程序中进行配置。 请注意,这只是一个简要的概述,以帮助您入门ArcGISEngine插件开发。在实际开发过程中,您可能需要深入学习ArcGISEngine API文档,并参考相关的示例代码和教程。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值