Использование утилиты MXD Doctor
Утилита MXD Doctor – это самостоятельное приложение, расположенное в папке Инструменты (Tools) каталога установки ArcGIS for Desktop. Приложение позволяет анализировать испорченные MXD-файлы. В зависимости от выполняемого анализа, элементы, содержащиеся в MXD-файле, могут быть скопированы из испорченного файла в новый или уже существующий MXD-файл.

Утилиту MXD Doctor также можно открыть из меню Все программы > ArcGIS > Инструменты Desktop (Desktop Tools).
Утилита MXD Doctor анализирует следующие элементы:
- карты и фреймы данных;
- компоновку страницы;
- скрипты проекта Visual Basic for Applications (VBA);
- галерею стилей;
- предварительный просмотр образцов.
После завершения анализа для каждого из этих объектов отображаются результаты с использованием следующих символов.
![]() | Восстанавливаемый объект. |
![]() | Восстанавливаемый, хотя и не полностью. |
![]() | Невозможно определить состояние. |
![]() | Не восстанавливаемый. |
![]() | Нет объекта. |
Например, следующее состояние документа указывает, что компоновка страницы восстановима, но карты в компоновке восстановимы не полностью. Галерея стилей не восстановима (эта проблема обычно возникает, когда используемые документом галереи стилей не установлены на компьютере). Предварительный просмотр образцов недоступен, и состояние скрипта Visual Basic для приложений (VBA) проекта не установлено. Если в проекте нет кода VBA, объект проекта VBA не включается в документ; это не является ошибкой. См. следующий скриншот:
Утилита MXD Doctor любезно предоставлена для помощи в исправлении проблемных .mxd-файлов. Перед использованием утилиты создайте резервную копию испорченного .mxd-файла, и если вы используете существующий .mxd-файл как целевой, тогда также создайте копию этого файла.

Утилита MXD Doctor предназначена для извлечения действительных значений из испорченных .mxd-файлов. Тем не менее, вы также можете использовать утилиту для извлечения объектов из действительных .mxd-файлов, копируя объекты из одного .mxd-файла в другой. Утилита также может быть использована для извлечения VBA-проекта из испорченного документа модуля ArcScene (расширение .sxd) или ArcGlobe (расширение .3dd). Эта функция работает, только если целевой документ является существующим документом. Используйте ArcScene или ArcGlobe для создания пустого целевого документа, перед включением утилиты MXD Doctor. Назначая в диалоговом окне утилиты MXD Doctor имена файлов исходных и целевых документов, просмотрите соответствующие папки и тип имени файла документа (поскольку браузер предусмотрен для просмотра .mxd и .mxt-файлов.
Для использования интерфейса утилиты MXD Doctor выполните следующие шаги.
- Создайте резервную копию испорченного файла, или, если вы используете существующий файл в качестве целевого, также создайте его резервную копию.
-
Запустите файл MXDDoctor.exe.
Появится диалоговое Окно предупреждения утилиты MXDDoctor (WarningMXDDoctor Warning) , напоминающее создать резервные копии ваших документов:
- Поскольку вы уже создали резервные копии ваших документов в шаге 1, выберите Да (Yes) для продолжения.
Диалоговое окно MXD Doctor откроется, как это показано на следующем скриншоте:
- Щелкните многоточие
для поиска MXD-файла.
- Найдите и выберите испорченный MXD-файл, который вы хотите исправить.
Появится предупреждение о том, что исследование документа карты может занять некоторое время. Щелкните ОК, чтобы продолжить.
Имя файла будет добавлено в текстовое поле и документ будет проанализирован. Результат анализа показан в кадре Состояние документа (Document Status).
- После завершения анализа .mxd-файла и до экспорта в новый .mxd-файл вам необходимо выполнить или одно, или все приведенные ниже действия идентификации объектов для выборки.
- Предварительно просмотрите содержимое испорченного .mxd-файла для выбора объектов, которые будут извлечены из испорченного документа. Предварительно просматривать можно только восстанавливаемые объекты.
На следующем скриншоте показано диалоговое окно Утилита MXD Doctor в режиме предварительного просмотра:
Если документ содержит более одной карты (фрейм данных), поле со списком Индекс (Index) даст вам возможность выбрать карту для предварительного просмотра. Индекс карты и ее имена отображаются в поле со списком. Поддерживается перемещение и изменение масштаба карт и компоновки страницы. Можно просмотреть только обзорное изображение.
- Создание диагностического отчета для всех объектов, находящихся в испорченном .mxd-файле. Для создания отчета щелкните мышью по клавише Создать (Generate). Результаты отобразятся на закладке Отчет (Report) кадра Просмотрщик (Viewer), как это показано на следующем скриншоте:
Содержимое этого отчета можно использовать для идентификации возможных неправильных объектов. Если необходимо, отчет можно сохранить как текстовой файл или распечатать его. Для этого щелкните мышью по соответствующей клавише: Сохранить (Save) или Печать (Print).
- Предварительно просмотрите содержимое испорченного .mxd-файла для выбора объектов, которые будут извлечены из испорченного документа. Предварительно просматривать можно только восстанавливаемые объекты.
- Перейдите на закладку Обработка (Treatment).
Откроется закладка Обработка (Treatment), и новое имя документа по умолчанию отобразится в текстовом поле Исходный файл утилиты MXD (MXD Target MXD File). Это значит, что был создан новый документ карты. По умолчанию это будет документ, хранящийся в такой же папке, как и испорченный документ, с таким же именем, но заканчивающимся на (_new).
- Задайте имя и расположение целевого .mxd-файла. Вы можете выполнить одно из следующих действий:
- Использовать имя и расположение по умолчанию.
- Задайте для нового документа другое имя и/или другое расположение.
- Выберите существующий документ карты в качестве целевого.
- Задайте опции обработки.
- Если вы хотите перенести все восстанавливаемые объекты в целевой файл, сохраняйте значок опции Перенести все неиспорченные объекты (Transfer all non broken) и перейдите к выполнению шага 11.
- Если вы хотите выбрать, какие восстанавливаемые объекты скопировать из испорченного документа, снимите значок с функции Перенести все неиспорченные объекты (Transfer all non broken). Контролируемые вами опции делятся на две категории: Компоновка страницы и Карты (PageLayout and Maps) и Разное (Miscellaneous). Флажок Включить (Enable) должен быть установлен для выбранной компоновки страницы и опций карты. На примере ниже показаны выбранные опции для восстановления Компоновки страницы и Действительных карт (PageLayout and Valid Maps).
- Если вы сняли флажок с функции Перенести все неиспорченные объекты (Transfer all non broken), установите флажок функции Включить (Enable) и выберите объекты, которые вы хотите извлечь.
Компоновка страницы и объекты карты связаны между собой, имеют четыре опции и, возможно, в зависимости от анализа испорченного объекта, ограничения. Можно установить следующие опции.
- Компоновка страницы и действительные карты (PageLayout and Valid Maps) – в целевой MXD-файл копируется компоновка страницы и действительные карты из испорченного документа. Эта опция удаляет из целевого файла .mxd компоновку существующей страницы и карты.
- Компоновка страницы и новая карта (PageLayout and New Map) – из испорченного документа копируется компоновка страницы без фреймов данных. Новый пустой фрейм данных добавлен в компоновку страницы. Эта опция удаляет из целевого файла .mxd компоновку существующей страницы и карты.
- Копировать только компоновку страницы (Only PageLayout) – из испорченного файла .mxd копируется только компоновка страницы, добавляя фреймы данных из целевого .mxd-файла в эту компоновку страницы.
- Только карты (Only Maps) – из испорченного файла .mxd карты копируются и добавляются в компоновку страницы исходного MXD-файла.
- Щелкните Исправить документ (Fix Document).
Исправление копий документа, копирование восстановимых объектов из испорченного документа и размещение их в целевом документе.
Ход выполнения обработки показан на участке правой стороне закладки Обработка (Treatment).
Все экспортированные вами восстановимые объекты сейчас находятся в файле .mxd.