最开始接触ArcGIS版本是9.3,为了需要也安装了9.2进行开发;因为自己的电脑配置较低,所以跑不起10.0中文版;毕业工作后,行业内用10.1居多(虽然10.3已出);现在10.4都要出来了;由于客户只有10.0的正版,所以这次要一键切换到10.0的版本,之前跳过这个版本,现在要重新来一次。

以前也做过版本升级,相关博文如下:

ArcEngine9.3迁移至ArcObject10.1

ArcGIS10.2下调试10.1的程序

一般情况都是将版本升级,升级后的版本接口更高级、功能更全面。现根据需要求,将ArcObject 10.1版本的降级为ArcObject10.0版本,所有调用了AO类库的组件都需要重新在ArcGIS10.0的环境下编译。

在环境相同或相似的情况下。具体的步骤:

一、地图文档另存

高版本的地图文档(*.mxd)在低版本软件上打不开,需要在高版本软件中另存为副本(    Save As Copy)后才可使用。

二、重新添加引用

AO程序版本转换最重要的是类库的引用问题。包括AO类库引用、平台组件引用和其他引用。引用一旦改变,对应使用的控件在重新生成后自动改变。下面是通过Add ArcGIS Reference工具添加缺失的引用(黄色感叹号)。

当然有的引用通过以上方式不能找到,可以直接通过系统引用来寻找,如ESRI.ArcGIS.AxControls。

三、版本差别修改

由于是从10.1降级为10.0,所以可能原来使用的接口、类、枚举、方法、属性等对象在目标框架下不存在或名称已修改。主要的解决方法是寻找相似的对象、或注释(不影响重新编译)、或修改(不影响主要功能)等,例如:

(1)图片符号样式不支持PNG

在10.0及以前版本,图片符号样式esriIPictureType枚举不支持PNG,只支持bmp和emf格式,将注释掉PNG文件选择即可。

(2)ADF引用改变

在ArcGIS9.2到10,Utility、Utility.BaseClasseUtility会逐渐被ESRI丢弃转而用ADF来代替。

在10.0中改为ESRI.ArcGIS.ADF.Local和ESRI.ArcGIS.ADF.Connection.Local

在10.1中改为ESRI.ArcGIS.ADF和ESRI.ArcGIS.ADF.BaseClasses

(3)接口、属性的降级

随着版本的升级,接口的版本也会不断升级,表现为接口名称改变、属性和方法增加,如图例的接口,在10.0版本中最高级接口是ILegend2,在10.1版本中最高级接口是ILegend3,因此,ILegend3的FixedFrame属性在ILegend2中不能再使用。类似的还有:INorthArrow、IScaleBar等。

有的接口名称虽然未改变,但属性有增加,如IDotDensityRenderer的属性MaintainDensityBy在10.0版本中没有(10.1版本新增)。

(4)资源文件缺失

源代码缺少一些资源文件,现已直接将注释,等需要再来添加、修改。

(5)其他问题

其他具体问题的修改。

ArcObject10.1降级至10.0的更多相关文章

  1. PostgreSQL 10.0 压缩版的 pgAdmin 不能用的问题

    PostgreSQL终于发布10.0正式版了!下载压缩版的更新了一下本机的版本,然后打开pgAdmin的时候总是报错“The application server could not be conta ...

  2. CentOS7 编译安装 nginx-1.10.0

    对于NGINX 支持epoll模型 epoll模型的优点 定义: epoll是Linux内核为处理大批句柄而作改进的poll,是Linux下多路复用IO接口select/poll的增强版本,它能显著的 ...

  3. Could not load file or assembly 'Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its de

    页面加载时出现这个错误: Could not load file or assembly 'Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Cul ...

  4. Centos7下安装mono3.10.0

    mono 3.10.0 正式发布:性能进一步改进,以前已经写过一篇  Centos 7.0 安装Mono 3.4 和Jexus 5.6.下面我们在CentOS 7上通过源码安装Mono 3.10, 需 ...

  5. mono 3.10.0 正式发布:性能进一步改进

    Mono是Xamarin资助的一个项目,是微软的.NET框架的开源实现.它使得使用C#.F#和其他.NET语言进行跨平台开发成为可能.Xamarin在Mono之上构建了跨平台开发工具以及像Xamari ...

  6. VMware Workstation 10.0 正式版官方简体中文下载(附序列号)

    虚拟机界数一数二的王者软件VMWare Workstation 今日推出了最新的VMware Workstation 10.0 版本.该版本最大的更新是加入了简体中文语言,这意味着未来神马汉化包.中文 ...

  7. DPA 9.1.85 升级到DPA 10.0.352流程

    SolarWinds DPA的升级其实是一件非常简单的事情,这里介绍一下从DPA 9.1.95升级到 DPA 10.0.352版本的流程.为什么要升级呢? DPA给用户发的邮件已经写的非常清楚了(如下 ...

  8. C:\Program Files (x86)\Common Files\microsoft shared\DevServer\10.0

    C:\Program Files (x86)\Common Files\microsoft shared\DevServer\10.0

  9. kafka0.9.0及0.10.0配置属性

    问题导读1.borker包含哪些属性?2.Producer包含哪些属性?3.Consumer如何配置?borker(0.9.0及0.10.0)配置Kafka日志本身是由多个日志段组成(log segm ...

随机推荐

  1. SAP的运输功能(转)

    SAP的运输功能(transportation)  transportation大体有三个作用: 1.运输计划transportation planning 概念:对outbound delivery ...

  2. composer 安装使用

    首先开启 php.ini ssl配置. 然后通过如下地址下载对应安装包安装即可:http://www.phpcomposer.com/ 当然如果安装失败,也可以下载 composer.phar 包 命 ...

  3. Can't get WebApplicationContext object from ContextRegistry.GetContext(): Resource handler for the 'web' protocol is not defined

    I'm stucked in configuring my web.config file under a web forms project in order to get an instance ...

  4. 开发一款高端大气上档次的android应用需要必备的知识——记于2013年末

    Android入门还是很简单的,看两本书,翻阅几篇文章,搭建了开发环境就算入门了.可是怎样开发一款完备的android应用呢,开发一款高端的android应用又需要那些知识呢,作者根据几年的开发经验做 ...

  5. java攻城师之路(Android篇)--搭建开发环境、拨打电话、发送短信、布局例子

    一.搭建开发环境 1.所需资源 JDK6以上 Eclipse3.6以上 SDK17, 2.3.3 ADT17 2.安装注意事项 不要使用中文路径 如果模拟器默认路径包含中文, 可以设置android_ ...

  6. No Dialect mapping for JDBC type: -9

    由于项目中使用的是hibernate 4.35版本和sqlserver 2008数据库.所以,自定义方言时,需要和老版本做区别: public class MySQLServerDialect ext ...

  7. 使用C语言描述静态链表和动态链表

    静态链表和动态链表是线性表链式存储结构的两种不同的表示方式. 静态链表的初始长度一般是固定的,在做插入和删除操作时不需要移动元素,仅需修改指针,故仍具有链式存储结构的主要优点. 动态链表是相对于静态链 ...

  8. yousa_team团队项目 兼职平台 完成展示

    我们团队的团队项目是一个大学生兼职网站,商家可以在网站上发布信息,学生对相应的岗位进行预约,然后根据信誉度来表示用户的信誉,整个平台由管理员监控, 包括修改错误信息,修改用户信誉度,删除过期信息,接受 ...

  9. 15款提高工作效率的 Web 项目管理工具

    在今天的快节奏的商业世界里,能够通过计划.组织.和管理资源池以及评估开发资源的模式来管理一个项目,是一个很艰巨的任务. 有很多现成的项目管理软件来帮助减轻项目管理的负担,并且他们几乎覆盖了所有类型的业 ...

  10. [C#] CSharp 基本语法

    CSharp Language Specification 一.基础 1.规范: 除常量外,所有变量用驼峰命名方式,其它用帕斯卡命名方式. 2.编译: 首先由csc.exe将cs文件编译成MSIL.当 ...