Me di cuenta de que esto está sucediendo hace meses cuando no pude alterar la estructura de la tabla en una instancia de ArcMap después de que se cerró otra instancia. Cuando, por ejemplo, elimino o agrego algunos campos a una clase de entidad en ArcMap, guardo y cierro el documento y abro ArcCatalog e intento eliminar esa clase de entidad en particular obtengo el error Eliminar: no se pudo eliminar el objeto u objetos seleccionados. Esto generalmente ocurre cuando se abre una instancia de ArcMap que contiene capas que estoy tratando de eliminar, por lo que la solución es iniciar el Administrador de tareas de Windows y eliminar los procesos de ArcMap.exe que, por alguna razón, todavía están abiertos.
¿Alguien más tiene este problema?
Ahora ejecuta SP3 y el problema no se ha resuelto.
Estoy ejecutando una configuración muy similar en una máquina comparable y no tengo este problema allí.
fuente
Respuestas:
No es tu culpa y no puedes hacer mucho al respecto. Sin embargo, si tiene curiosidad sobre el motivo, lo que sucede es que hay una referencia circular COM (lo más probable es que algo escuche algún origen de eventos, como el Editor) y cuando las aplicaciones intentan salir, no pueden, porque algunos objetos se mantienen entre ellos vivos. Esto puede ser desde una extensión que haya instalado, o incluso desde el propio código ESRI. Esto solía suceder todo el tiempo y solo puede manifestarse bajo ciertas condiciones, como ciertos comandos visibles en la barra de herramientas.
De un antiguo tutorial de ArcObjects sobre conceptos COM :
Si tiene más curiosidad, elimine (o haga una copia de seguridad) su Normal.mxt, lo que borrará todas las personalizaciones y verá si este problema persiste.
fuente
¡Gracias @Kirk y @Ragi por resolver este problema! Esto es lo que he hecho al monitorear los procesos del Administrador de tareas:
También eliminé y eliminé ArcBruTile
Los procesos de ArcMap ahora se cierran como se esperaba
fuente
No estoy tratando de recuperar esta publicación de la muerte, pero al trabajar con el soporte de ESRI en este problema con un servidor Citrix (los usuarios se bloquean o cierran sesión, arcgiscachemanager.exe no se cierra 20-30 minutos más tarde o más, si es que lo hace, los usuarios no pueden volver a ArcMap y luego deben confiar en que 2 administradores del servidor estarán disponibles para iniciar sesión en el servidor y liberarlos manualmente), ESRI está copiando y pegando una solución de esta página y no funciona. Al menos no cuando se trabaja en un entorno Citrix.
Para Citrix, descubrimos que la creación de dos claves de registro (una para eliminar el proceso bloqueado y otra para devolver la configuración a su estado original) "solucionó" el problema.
Para los que no son Citrix, hemos jugado con la idea de simplemente crear un script para matar el proceso, pero como no estamos en Citrix, ya estamos en el servidor, decidimos que no era necesario.
Espero que esto ayude.
------- datos copiados del ticket de soporte escalado -------- Citrix tiene configuraciones de clave de registro que ayudarán a administrar aplicaciones que generan procesos secundarios en segundo plano. Tiene muchos de los síntomas que deberían hacer que esta solución sea una configuración plausible. Eche un vistazo a los siguientes artículos de conocimiento de Citrix:
El cierre de sesión correcto de una aplicación publicada representa la sesión en estado activo: http://support.citrix.com/article/CTX891671
Sesiones activas después de que el usuario cierre sesión en un entorno XenApp cuando se actualiza de Windows Server 2003 a Windows Server 2008: http://support.citrix.com/article/CTX134956
XenApp 6.5 AppCenter Console muestra el estado de la aplicación La aplicación no se está ejecutando: http://support.citrix.com/article/CTX133328
En estos artículos, se analiza cómo las aplicaciones publicadas pueden hacer que una sesión no se cierre o que un usuario no cierre la sesión correctamente. En esos casos, un administrador tenía que restablecer / cerrar las sesiones o finalizar el proceso desde el servidor que todavía se estaba ejecutando. Lo que sucede en Citrix es que publica la aplicación principal, en su caso ArcMap. Solo ese exe se cierra al salir de una aplicación (o si se bloquea). Como resultado, cualquier exe asociado con la aplicación que se generó cuando se abrió la aplicación no se cerrará completamente en Citrix, lo que provocará este estado. Entonces, cuando ArcGISCacheMgr.exe tarda mucho tiempo en ejecutarse o la aplicación se bloquea, los usuarios finales no pueden iniciar una nueva sesión.
Los artículos discuten cómo puede agregar estos procesos secundarios a una clave de registro para cerrarlos automáticamente al cerrar la aplicación principal. Otra opción que puede explorar es un script de cierre de sesión para verificar los procesos y finalizarlos si existen.
fuente
Cree un archivo .bat, péguelo y guárdelo en el escritorio.
fuente
PsKill de SysInternals Suite (un kit de herramientas casi obligatorio en mi opinión) se puede vincular a un atajo y disparar a voluntad para limpiar los procesos colgados. Hacerlo es feo porque no hace nada para resolver el problema original, pero permite que uno continúe de manera rápida y eficiente.
Últimamente he estado recibiendo procesos invisibles de arcmap.exe varias veces a la semana, no con tanta frecuencia antes, pero ha estado sucediendo durante algún tiempo. Usualmente estoy usando licencias concurrentes. Parece suceder más a menudo cuando tengo más de una sesión de Arcmap activa. Utilizamos antivirus Sophos, en Win7 de 64 bits.
fuente