ArcGIS Pro SDK二次开发路程也近一年时间了,这里总结一下平时遇到的一些问题和解决方法。有些问题没能解决,也记录下来,提醒自己不要忘记。
一、在VS2022中进行调试弹出错误
正常在VS2022中,如果要调试程序的话,直接按F5,或点击菜单栏下的调试按钮即可调试。
但是当你调试时,可能会碰到如下情况,弹出一个提示框,然后死机:
其实看提示框的标题也知道,是破解文件AfCore.dll的问题。
具体这个AfCore.dll内部有什么问题不清楚,但我找到了一个可用的破解版本。
下载链接如下:
AfCore.dllhttps://pan.baidu.com/s/1JnR_2eF0FCHU0U10-DR7hw?pwd=mwck
下载后将AfCore.dll文件复制到你的Pro安装目录的【bin】文件夹下,替换掉原文件即可。
重启VS2022,再调试就可以了。
二、ArcGIS Pro SDK版本和当前Pro版本不一致
在VS2022在添加SDK项目时,可能会出现ArcGIS Pro SDK版本和你当前使用的Pro版本不一致的错误。如下图:
目前Pro的破解版只停留在3.0.x,因此你使用的SDK版本也只能用3.0。如果版本过高就可能会导致出现这样的问题。
但是有时候你装了SDK3.0,刚开始可以,过一段时间又出现这样的问题,是因为SDK进行了自动更新,需要到VS2022中把自动更新关闭掉。
解决办法就是重新安装3.0版本的SDK,安装好后殷自动更新关掉,就一劳永逸了。
附上SDK3.0版本的下载链接:
ArcGISProSDK3.0https://pan.baidu.com/s/1r_mwMvaG_xjsLCX618uwZQ?pwd=b7db
三、AddIn项目中的图标图片无法正常显示
在AddIn项目通常会添加Button等控件,系统会默认这些控件一个图标:
如果你想替换掉这个图标,可以先准备好图片,放在工程文件夹下:
然后在Config.daml中进行引用:
但是运行时会发现,图标并不会变化。
这是因为图片属性里的【生成操作】默认为【无】,将它修改为【内容】即可。
四、SHP图层的自定义右键菜单栏无效
通常,我们可以在图层的右键菜单栏中添加自定义按钮。
正常使用方法是在Config.daml中进行如下设置:
如果图层数据是GDB的话,正常显示:
但如果是SHP数据的图层的话,并不会出现自定义按钮。
原因在于SHP图层在SDK中并不是一般的layer,而是unregisteredLayer。
把所属位置改成【esri_mapping_unregisteredLayerContextMenu】即可。