答案
将提供该工作流作为一组最佳实践,用于对 ArcMap 或 ArcGIS Pro 崩溃进行故障排除,但不包括 MXD 文件问题。 此工作流包括以下内容:
了解情况的背景
- 验证是否已执行任何最近 Windows 更新或者对硬件或显卡的修改。 在某些情况下,这些配置可能会改变与 ArcMap 的兼容性,从而导致软件崩溃。
- 验证是否生成了与当前崩溃相关联的任何转储文件。
- 转储文件是软件在崩溃期间生成的报告,用于描述冲突的原因。
- 位于 C:\Users\<用户名>\AppData\Local\ESRI\ErrorReports。 或者,可以使用 %localappdata%\ESRI\ErrorReports 访问该文件夹
- 确保文件的创建日期属于软件崩溃的日期。 在某些情况下,该文件夹可能包含与原先崩溃相关联的其他转储文件
- 如果没有转储文件,但软件崩溃,则可能与显卡存在冲突。
- 可以使用 Windows Debugger Preview (WinDBG) 分析转储文件。 可以从 Microsoft Store 免费安装此应用程序。 转储文件的名称结构还会提供诸如产品及其版本、创建时间和日期等信息,如下图所示:
- WinDBG 中的分析结果将显示一个以蓝色高亮显示的模块(.dll 文件),如下图所示,单击该模块后,将在计算机上的文件资源管理器应用程序中显示其位置。 根据结果,可将其分为四个主要类别,以下将通过一些示例来介绍解决方案:
- 显卡冲突
- 软件损坏
- 与计算机的组件发生冲突
- 其他:工具和加载项
显卡冲突
- 关联模块包括:
- 在这些情况下,请联系 IT 以按照问题:显卡冲突可能导致 ArcMap 崩溃中建议的解决方法进行操作。 这种禁用/启用解决方法可用于检测存在冲突的显卡,除非计算机仅有一张显卡
- 标识冲突显卡后,IT 即可找到最适用的解决方案,例如更新显卡的驱动程序。 请注意,对显卡进行故障排除不在 Esri 支持范围内。
- 或者,当 IT 对显卡进行故障排除时,可以按照操作方法:将 ArcGIS Desktop 设置为使用其他显卡运行中介绍的步骤,将 ArcMap 配置为使用其他显卡运行
- 此部分解决方案也适用于其他产品,例如 ArcGIS Pro、ArcScene 或 Drone2Map。
- 必须使用托管在产品 bin 目录中的可执行文件。 bin 目录通常位于:
- (ArcMap) C:\Program Files (x86)\ArcGIS\Desktop10.x\bin
- (ArcGIS Pro) C:\Program Files\ArcGIS\Pro\bin
- (License Manager) C:\Program Files (x86)\ArcGIS\LicenseManager\bin
软件损坏
- 一些关联模块包括:
- ArcMap.exe
- ArcGIS Pro.exe
- AfCore.dll
- AfCore_libFNP.dll
- GdbCore.dll
- Geometry.dll
- TiTusUI.dll
- 用于标识与软件损坏相关的模块的主键,当从 WinDBG 输出中单击该主键时,将显示其位置为软件的 bin 目录,如下图所示,以 AfCore.dll 为例:
与计算机的组件发生冲突
- 可能存在的模块包括:
- ACEEXCL.dll:与无法在计算机上安装的 Microsoft Access Database Engine Redistributable 相关。
- WindowsBase.dll:与 .NET Framework 相关
- VCRUNTIME140.dll:与 Microsoft Visual C++ 相关
- 要确定原因以及与该模块相关联的内容,需要根据所涉及的具体模块进行进一步调查。
- 通常,这些类型的问题可能会显示其自己的错误,并且主要发生在更新和/或硬件配置期间禁用、卸载或修改组件的情况下
- 最常见的组件包括:
- 在某些情况下,出现这些问题是因为软件不兼容,因此必须运行 CanYouRunIt 工具。
其他:工具和加载项
在这些情况下,转储文件的名称包含工具和/或加载项的名称,而非软件的名称。 需要根据具体模块结果进行进一步调查。 某些加载项可能会导致软件崩溃,例如:
软件的某些特定工具可能会导致崩溃,并且转储文件的名称包含工具的名称,而非软件的名称。 要解决此问题,建议在控制面板中对其进行修复或完全卸载,然后重新安装。 以下是一些示例:
- ExtTopoEngine.dll:对应于 ArcMap 的后台地理处理,可以通过修复或完全卸载,然后重新安装来解决该问题。
- DesktopIndexingService.exe