• 高版本Visual Studio和低版本ArcGIS共存 工具箱没有控件的解决方法


    转载请声明。博客园/B站/CSDN/知乎/小专栏 @秋意正寒

    欢迎访问小专栏,更多WebGIS开发(Cesium等)经验分享:https://xiaozhuanlan.com/gishome

    众所周知,如果要进行独立的而不是ArcMap Addins的二次开发,是需要使用ArcEngine的。可是,ArcEngine的授权几乎是没有的。

    一般比较好弄的授(po)权(jie)是ArcMap为首的ArcGIS Desktop,如果要进行二次开发,无非有两种:

    • Winform的二次开发
    • Addins的二次开发

    其中,后一种需要额外安装ArcObjects SDK,AO的授权与Desktop的一样。

    安装AO有一个限制:有Visual Studio版本限制。例如,10.2只能匹配vs2010和2012,10.4只能匹配vs2013和vs2015.

    安装AO后,与安装了Engine一样,在vs的工具箱里会出现MapControl等控件,可以直接拖拽。

    ===========分割线==========

    现在要说的是第一种,如果安装的是10.4(为例),但是本机的VS版本高于2015,比如安装了2019,那么AO安装不上了,我还能不能调用到工具箱里的各种控件呢?

    答案是可以的。

    只要正确授(po)权(jie)了ArcGIS Desktop,就可以通过导入dll的方式手工引入各种控件。

    在VS工具箱里引入

    "C:WindowsassemblyGAC_MSILESRI.ArcGIS.AxControls10.2.0.0__8fc3cc631e44ad86ESRI.ArcGIS.AxControls.dll"

    这个dll即可,这个dll是10.2的,而我当前开发环境是VS2017社区版。

    几大控件均在此dll中定义,但是这些控件都从属于ESRI.ArcGIS.Controls这个命名空间下。

  • 相关阅读:
    LeetCode-Letter Combinations of a Phone Number
    LeetCode-Sort Colors
    C++Memset误区
    LeetCode-Valid Palindrome
    LeetCode-Longest Consecutive Sequence
    C++豆知识索引
    C++ 哈希表
    LeetCode-Sum Root to Leaf Numbers
    LeetCode-Word LadderII
    LeetCode-Word Ladder
  • 原文地址:https://www.cnblogs.com/onsummer/p/11493059.html
Copyright © 2020-2023  润新知