1、重裝ArcObject SDK for .NET Framework方法
(1)問題描述:
環境:WIN10 64bit、Visual Studio 2013、ArcGIS10.1、ArcGIS Engine 10.1
之前已安裝有VS2013(或者2013及以上Studio版本),后來安裝的ArcGIS和AE。
安裝后,在VS2013的C#模板下,看不到“ArcGIS”的項,而且工具箱中也沒有ArcGIS的組件。

(2)解決方法:
一般解決方法是, “添加選項卡”--“選擇項...”-- 在.NET Framework組件中勾選ESRI相關組件添加即可。
然而我在.NET Framework組件下沒找到任何ESRI組件。重新修復了ArcGIS和AE,均沒有效果。還有網友說在.NET Framework組件下的“瀏覽”里添加安裝目錄下一個esri的.dll(具體忘了),也沒找到該dll。
考慮是AE的.NET Framework組件根本沒裝好,在重裝ArcObject SDK for .NET Framework時,提示必須是VS2010 (此時針對ArcGIS 10.1, 若是ArcGIS 10.2 則最高支持到VS2012)版本,安裝中止。

重點是這里:
打開注冊表,定位至 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的安裝路徑(對於VS2013及以上版本,請針對VS的版本作出相應的調整)。
這樣繼續安裝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, VS2017為15.0, VS2019為16.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。這取決於你裝了什么。
模板不出現的解決辦法(以VS2017為例):解決方法是將模板文件拷貝到vs模板庫中。
對於VS2012, VS和ArcGIS都安裝在E盤時,安裝時ArcGis模板文件放在
E:\Program Files\Microsoft Visual Studio 11.0\Common7\IDE\ItemTemplates\CSharp\ArcGIS
E:\Program Files\Microsoft Visual Studio 11.0\Common7\IDE\ProjectTemplates\CSharp\ArcGIS中,

所以,我們若想在VS2017下恢復ArcGIS的工程模板,可如下方式進行操作:
【注意這一步直接決定Visual Studio是否能正確識別ArcGIS模板,至關重要】
將模板(C:\Program\IDE\Microsoft Visual Studio\2017\Microsoft Visual Studio 10.0\Common7\IDE,兩個文件夾XXX\ItemTemplates\CSharp、XXX\ProjectTemplates\CSharp下的"ArcGIS"文件夾)拷貝至vs2017模板文件位置(C:\Users\你的用戶名\Documents\Visual Studio 2017\Templates\)。
放置的具體操作,見下圖所示。



以上步驟的詳細操作分布,可在下圖中弄清楚(VS2017, ArcGIS 10.2)。

本部分3. 0更新於 2019.8.4 1515
2.3 問題三:工具箱中沒有 ArcGis Windows Forms
解決方法1:
第一步:點擊工具箱,添加選項卡,命名為ArcGis Windows Forms或者其他你喜歡的名字
第二步,工具箱內右鍵,選擇項,選COM組件
第三步:選中相關控件,打鈎然后確定
解決方法2:
第一步:添加選項卡,命名為ArcGis Windows Forms或者其他你喜歡的名字
第二步:在安裝目錄的bin下面找到相關的控件,以.ocx為后綴,選中直接拖入工具箱中。

18.10.15 更新V1.1
19.6.9 再次更新V2.0
19.6.21 更新 v2.2
19.8.4 最新更新 v3.0
參考文章
vs2015不支持ArcGIS Engine以及丟失控件和模板解決辦法
