Я понял, что это происходит несколько месяцев назад, когда я не смог изменить структуру таблицы в экземпляре ArcMap после закрытия другого экземпляра. Когда, например, я удаляю или добавляю некоторые поля в класс пространственных объектов в ArcMap, сохраняю и закрываю документ, открываю ArcCatalog и пытаюсь удалить этот конкретный класс пространственных объектов, я получаю сообщение «Ошибка удаления: не удалось удалить выбранные объекты». Обычно это происходит, когда открывается экземпляр ArcMap, содержащий слои, которые я пытаюсь удалить, поэтому обходной путь - запустить диспетчер задач Windows и завершить процессы ArcMap.exe, которые по какой-то причине все еще открыты.
У кого-нибудь еще есть эта проблема?
Сейчас работает SP3 и проблема не решена.
Я запускаю очень похожую установку на сопоставимой машине, и у меня нет этой проблемы там.
источник
Ответы:
Не твоя вина, и ты мало что можешь с этим поделать. Однако, если вам любопытно узнать причину, то происходит то, что существует циклическая ссылка COM (скорее всего, что-то прослушивающее некоторый источник событий - например, редактор), и когда приложения пытаются выйти из него, не могут, потому что некоторые объекты сохраняют друг друга живы. Это может быть из расширения, которое вы установили, или даже из самого кода ESRI. Раньше это происходило постоянно, и оно может проявляться только при определенных условиях, например, когда определенные команды видны на панели инструментов.
Из старого руководства ArcObjects по концепции COM :
Если вам еще интереснее, удалите (или сделайте резервную копию) свой файл Normal.mxt, который уничтожит все настройки и покажет, сохраняется ли эта проблема.
источник
Спасибо @Kirk и @Ragi за решение этой проблемы! Вот что я сделал во время мониторинга процессов диспетчера задач:
Я также удалил и удалил ArcBruTile
Процессы ArcMap теперь закрываются, как и ожидалось
источник
Не пытаясь вернуть этот пост из мертвых, но при работе с поддержкой ESRI по этому вопросу на сервере Citrix (пользователи аварийно завершают работу или выходят из системы, arcgiscachemanager.exe не закрывается через 20-30 минут или более, если это вообще происходит, пользователи не могут вернуться в ArcMap, а затем им приходится полагаться на двух администраторов сервера, которые могут войти на сервер и вручную освободить их), ESRI копирует и вставляет решение с этой страницы, и оно не работает. По крайней мере, при работе в среде Citrix.
Для Citrix мы обнаружили, что создание двух ключей реестра (один для уничтожения зависшего процесса, другой для возврата настроек в исходное состояние) «устранило» проблему.
Для не-Citrix мы играли с идеей просто создать сценарий, чтобы убить процесс, но так как, когда мы не в Citrix, мы уже на сервере, мы решили, что в этом нет необходимости.
Надеюсь это поможет.
------- скопированные данные из расширенной заявки в службу поддержки -------- Citrix имеет параметры ключа реестра, которые помогут управлять приложениями, которые порождают вторичные процессы в фоновом режиме. У вас много симптомов, которые должны сделать это решение приемлемым. Просмотрите следующие статьи знаний Citrix:
Изящный выход из опубликованного приложения переводит сеанс в активное состояние: http://support.citrix.com/article/CTX891671
Активные сеансы после выхода пользователя из системы в среде XenApp при обновлении с Windows Server 2003 до Windows Server 2008: http://support.citrix.com/article/CTX134956
Консоль XenApp 6.5 AppCenter отображает состояние приложения Приложение не запущено: http://support.citrix.com/article/CTX133328
В этих статьях обсуждается, как опубликованные приложения могут привести к тому, что сеанс не закроется, или пользователь не выйдет из системы должным образом. В этих случаях сеансы должны были быть сброшены администратором или завершены с помощью завершения процесса с сервера, который все еще работал. В Citrix происходит то, что вы публикуете основное приложение, в вашем случае ArcMap. Только этот exe-файл закрывается при выходе из приложения (или в случае его сбоя). В результате любые исполняемые файлы, связанные с приложением, которые были созданы при открытии приложения, не будут полностью закрыты в Citrix, что приведет к этому состоянию. Поэтому, когда выполнение ArcGISCacheMgr.exe занимает много времени или происходит сбой приложения, ваши конечные пользователи не могут начать новый сеанс.
В статьях обсуждается, как можно добавить эти вторичные процессы в раздел реестра, чтобы автоматически закрывать их при закрытии основного приложения. Другой вариант, который вы можете изучить, - это сценарий выхода из системы, чтобы проверить процессы и завершить их, если они существуют.
источник
Создайте файл .bat, вставьте его и сохраните на рабочий стол.
источник
PsKill из SysInternals Suite (на мой взгляд, чертовски почти обязательный инструментарий) можно связать с ярлыком и запускать по желанию для очистки зависших процессов. Это уродливо в том смысле, что ничего не решает исходную проблему, но позволяет действовать быстро и эффективно.
В последнее время я получаю невидимые процессы arcmap.exe несколько раз в неделю, не так часто раньше, но это происходило в течение некоторого времени. Я обычно использую параллельное лицензирование. Кажется, это происходит чаще, когда у меня активен более одного сеанса Arcmap. Мы используем антивирус Sophos, на 64-битной Win7.
источник