ArcGIS二次开发基础教程:开发环境配置教程(ArcEngine10.4+VS2019)[通俗易懂]

ArcGIS二次开发基础教程:开发环境配置教程(ArcEngine10.4+VS2019)[通俗易懂]ArcEngine10.4+VS2019(其他版本类似)开发环境配置教程由于ArcGIS、ArcEngine以及承载开发环境的VisualStudio的版本众多,其开发环境的配置也有不小的难度,故写此文章写给新入门ArcGIS二次开发的同学,帮助他们摆平入门的第一道坎。(当然不是,主要是写给我自己以后看的,省得我又要到处找教程)进行ArcGIS二次开发有很多种方式,比如现在主流的Python、AE+C#等。如题,这里说的是AE+C#开发的第一步,开发环境的配置。对进一步开发有兴趣的朋友可以去看我的CS

大家好,又见面了,我是你们的朋友全栈君。

开发环境配置教程

由于ArcGIS、ArcEngine以及承载开发环境的Visual Studio的版本众多,其开发环境的配置也有不小的难度,故写此文章写给新入门ArcGIS二次开发的同学,帮助他们摆平入门的第一道坎。

进行ArcGIS二次开发有很多种方式,比如现在主流的Python、AE+C#等。如题,这里说的是AE+C#开发的第一步,开发环境的配置。对进一步开发有兴趣的朋友可以去看我的CSDN博客

  1. 既然是ArcGIS的开发,首先我们要有ArcGIS吧。那就安装ArcGIS Desktop,版本有很多,最广泛使用的是10.2版本,10.4也行。ArcGIS10.4.1 百度网盘下载 提取码:0479 麻辣GIS的安装教程 ArcGIS10.2.1百度网盘下载 提取码:pnsb
  2. 然后是ArcEngine和ArcObject的安装,ArcEngine+ArcObject+激活成功教程文件10.4.1 百度网盘 提取码:z1qx ArcEngine+ArcObject+激活成功教程文件10.2.1 百度网盘 提取码:xkev

着重说明:ArcEngine和VS版本是有对应的(ArcEngine和ArcDesktop的版本必须一致)。一般来说,VS2010和2012对应ArcEngine10.2,VS2013对应ArcEngine10.4,错误的版本可能会导致不可预知的错误。下面会讲述如何破除这个限制。(当然,最好就是用规定的配置,有模板,授权和添加引用也很方便)

下载文件后,双击运行ArcGIS_Engine_Windows_1041_152027.exe ,选择文件解压目录,注意这是解压目录,解 压后再选择Setup.exe安装,选择完全安装以及安装目录,C盘有条件就直接安装。

在这里插入图片描述

再双击运行ArcObjects_SDK_for_NET_Framework_1041_151832.exe,同上。如过出现报错,不能安装,是因为ArcGIS版本检测到没有安装Visual Studio2019的缘故,解决方法如下。

在这里插入图片描述

(1)打开注册表位置:HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\VisualStudio

(2)新建项12.0(如果没有),新建两个字符串值,并写入值,如下:

InstallDir C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\

ShellFolder C:\Program Files (x86)\Microsoft Visual Studio 12.0\

(3)重新安装

在这里插入图片描述

安装完成后需激活成功教程,跟Desktop一样

将激活成功教程文件夹中的AfCore.dll,替换到ArcEngine安装目录的bin文件夹下覆盖原文件。

在这里插入图片描述

这样就基本完成。
3. 接下来是VS的一些配置问题

打开VS后,创建新的Windows窗体应用程序,在工具箱中右键==>添加选项卡==>取名ArcGIS,在新建的选项卡里,再右键,选择“选择项”,弹窗中,选择.NET Framework组件,选择需要添加的arcgis组件,打勾即可

在这里插入图片描述

再说一个代码权限的问题,

//基本权限,一定要的
ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCode.EngineOrDesktop);
IAoInitialize m_aoinitialize = new AoInitializeClass();
m_aoinitialize.Initialize(esriLicenseProductCode.esriLicenseProductCodeEngine);
//扩展权限,需要用到什么扩展,就授权哪个,在License控件属性需勾选对应的项
m_aoinitialize.CheckOutExtension(esriLicenseExtensionCode.esriLicenseExtensionCodeSpatialAnalyst);

LicenseExtensionCode.esriLicenseExtensionCodeSpatialAnalyst);

在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/163428.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • navicat15版本的激活码【2021.7最新】

    (navicat15版本的激活码)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.htmlMLZPB5EL5Q-eyJsa…

    2022年3月21日
  • C语言刷屏

    C语言刷屏QQ刷屏原理和复制粘贴差不多,只不过是叫系统帮你粘贴并摁下回车键。#include<stdio.h>#include<Windows.h>intmain(){ intn; charname[100]; printf(“请输入窗口名字:”); scanf(“%s”,&name);//窗口名字 printf(“请输入刷屏次数:”);…

    2022年6月8日
  • 网站技术分析工具:Wappalyzer

    网站技术分析工具:Wappalyzer经常有人会问,这个网站使用什么技术搭建的?AngularJS?Django?Jquery?还是什么呢?如果遇到这样的问题,建议你装一个这样的插件:Wappalyzer https://wappalyzer.com/比如CSDN:比如worktile:…

    2022年5月4日
  • filter builder_苹果数据分析代码怎么看

    filter builder_苹果数据分析代码怎么看在FilterDispatcher中首先关注的方法是init()和doFilter(),两个有用的局部变量(或者状态)[code="java"]privateFilterConfigfilterConfig;protectedDispatcherdispatcher;[/code]filterConfig用来向filter传递信息,提供了四个方法:[code="java"]…

    2022年8月16日
  • ssm框架过时了吗_spring实战

    ssm框架过时了吗_spring实战SpringSpring是一个开源的免费的框架Spring是一个轻量级的,非入侵式的框架控制反转(IOC),面向切面编程(AOP)支持事务的处理,对框架整合的支持IOC理论UserDaoUserDaoImpUserSeviceUserServiceImp在之前,用户的需求可能会影响原来的代码。使用一个set。public void setUserDao(UserDao userDao){ this.userDao = userDao;}之前是主动创建对象,控制

    2022年8月9日
  • MongoDB 服务无法启动

    MongoDB 服务无法启动MongoDB 服务无法启动

    2022年4月25日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号