1、重装ArcObject SDK for .NET Framework方法
1、问题描述:
环境:Win7 64bit、Visual Studio 2013、ArcGIS10.1、ArcGIS Engine 10.1.
之前已安装有VS2013,后来安装的ArcGIS和AE。
问题如图所示:
2、解决方法:
一般解决方法是, “添加选项卡”--“选择项...”-- 在.NET Framework组件中勾选ESRI相关组件添加即可。然而我在.NET Framework组件下没找到任何ESRI组件。重新修复了ArcGIS和AE,均没有效果。还有网友说在.NET Framework组件下的“浏览”里添加安装目录下一个esri的.dll(具体忘了),也没找到该dll。
考虑是AE的.NET Framework组件根本没装好,在重装ArcObject SDK for .NET Framework时,提示必须是VS2010版本,安装中止。
重点是这里:
打开注册表,定位至HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0,点击10.0在右侧空白处右侧新建--字符串值,名称取”InstallDir“,类型默认为REG_SZ,其数据值即为HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\12.0\InstallDir的值,也就是你VS2013的安装路径。
这样继续安装ArcObject SDK for Microsoft .NET Framework就能正常安装了(因为这个安装过程能读到VS2010的路径了),安装好后.NET Framework组件下就会有所需控件,按需添加即可。
二、修改配置方法
高版本不支持ArcGIS Engine以及丢失控件和模板,原因可能是:
1、因为先装vs 后装 ArcGIS或AE出现。
2、vs版本不匹配,手动修改注册表后安装ArcGIS。
所有这些问题其实都可以通过在装好ArcGIS对应支持的vs 版本基础上重装ArcGIS来解决,但是,如果你不想重装的话,可以试试下面的方法。
安装ArcGIS Engine,可能出现几个问题。
2.1 问题一:提示支持vsxxx版本
ESRI软件自身的问题,vs版本不是对应的话,直接安装不了。
打开注册表。在注册表中HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0 增加类型为REG_SZ的InstallDir和ShellFolder节点。如果没有10.0文件夹,需要先在注册表添加该文件夹。
InstallDir的结点的值为HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\14.0\InstallDir的值。
(备注:11.0对应VS2012, 12.0对应VS2013, VS2015对应14.0)
ShellFolder节点的值为HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\14.0\ShellFolder的值。也就是VS的安装路径。
例如,x64的Win8下,VS2015,默认是:C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\;vs2013是在HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\12.0\InstallDir目录下。看网上只用添加installDIr节点即可。
增加这个注册表值是因为这安装程序必须要能够读到vs2010的安装路径。
修改完后即可安装。
2.2 问题二:模板丢失
vs中没有 arcgis 模板—vs新建项目时,项目类型中没有ArcGIS一项。
这里ArcGis模板下面有三项,DeskTop Add-Ins,Extending ArcObjects和Sever Object Extensions。这取决于你装了什么。
模板不出现的解决办法(以VS2015为例):
(1):将模板文件拷贝到vs模板库中。
对于VS2015, VS和ArcGIS都安装在D盘时,安装时ArcGis模板文件放在
D:\Program Files\Microsoft Visual Studio 14.0\Microsoft Visual Studio 10.0\Common7\IDE\ItemTemplates\CSharp和
D:\Program Files\Microsoft Visual Studio 14.0\Microsoft Visual Studio 10.0\Common7\IDE\ProjectTemplates\CSharp中,
将模板(两个文件夹下的ArcGIS文件夹)拷贝至vs2015模板文件位置:
D:\Program Files\Microsoft Visual Studio 14.0\Common7\IDE\ItemTemplates\CSharp和
D:\Program Files\Microsoft Visual Studio 14.0\Common7\IDE\ProjectTemplates\CSharp中。
(2):用右键,管理员权限运行devenv.exe,就是启动vs2015
(3):重新安装一次模板(引用的)我的是vs2015
按照以下顺序,打开 VS2015的命令行工具
开始--> 所有应用 --> Microsoft Visual Studio 2015 --> vs2015开发人员命令提示(可能会叫Visual Studio 2015 Command Prompt )
然后执行如下命令:
devenv.exe /InstallVSTemplates
需要注意的事情是,这个命令执行后,不会马上出现项目或项模板,需要重新打开vs2015,新建时会重新初始化模板。
如果第三步有问题,换成用管理员权限运行。
2.3 问题三:工具箱中没有 ArcGis Windows Forms
解决方法1:
第一步:点击工具箱,添加选项卡,命名为ArcGis Windows Forms或者其他你喜欢的名字
第二步,工具箱内右键,选择项,选COM组件
第三步:选中相关控件,打钩然后确定
解决方法2:
第一步:添加选项卡,命名为ArcGis Windows Forms或者其他你喜欢的名字
第二步:在安装目录的bin下面找到相关的控件,以.ocx为后缀,选中直接拖入工具箱中。
参考文章
vs2015不支持ArcGIS Engine以及丢失控件和模板解决办法