ArcMap.exe işlemleri ArcMap kapatıldıktan sonra açık kalır? [kapalı]


23

Bunun, aylar önce bir ArcMap örneğindeki tablo yapısını, başka bir örnek kapatıldıktan sonra değiştiremediğimde olduğunu anladım. Örneğin, ArcMap’teki bir özellik sınıfına bazı alanları kaldırdığımda veya eklediğimde, belgeyi kaydedip kapatıp ArcCatalog’u açıp o belirli Özellik Sınıfını silmeyi denediğimde Silme Başarısız: Seçilen nesneler silinemedi. Bu genellikle, silmeye çalıştığım katmanları içeren bir ArcMap örneği açıldığında gerçekleşir; böylece geçici çözüm Windows Görev Yöneticisi'ni başlatır ve nedense açılmış olan ArcMap.exe işlemlerini keser.

Bu sorunu yaşayan başka biri var mı?

Şimdi çalışan SP3 ve sorun çözülmedi.

görüntü tanımını buraya girin


Benzer bir makinede çok benzer bir kurulum yapıyorum ve orada bu sorun yok.


4
EVET! Lütfen ESRI forumlarındaki forum postalarıma bakınız . ESRI ile bir bilet açmak için yeniden üretmeye çalışıyorum (rastgele görünüyor)
SaultDon

3. parti eklentiniz var mı? Acaba IExtension.Shutdown içindeki bir istisna bunu açıklayabilir mi?
Kirk Kuykendall

@kirk Ben hiçbiri ve hiçbiri v10 bu kurulumunda hiç yüklü değil. Bu bile yeni bir windows7 kurulumu. Size benzer şekilde, SP1'den beri bu durum devam etti.
SaultDon

2
Neredeyse 100 işlem yürütüyorsunuz, bu gerçekten herhangi bir şey olabilir, ancak virüs tarayıcılarından, yedekleme yazılımlarından ve arama indeksleme hizmetlerinden şüphelenirdim.
blah238

@Kirk - bu kurulumda uzantı yok, ancak işe başladığımda iki kez kontrol edeceğim. Kendi eklenti araçlarımdan birkaçı var. Aynı eklentileri olan başka bir Windows 7 makinesinde de benzer bir kurulumum var ve orada sorun yok.
Jakub Sisak GeoGraphics 17:11

Yanıtlar:


18

Sizin suçunuz değil ve bu konuda yapabileceğiniz pek bir şey yok. Ancak, bunun nedenini merak ediyorsanız, ne olduğu bir COM dairesel referansının (Editör gibi bazı olay kaynaklarını dinleyen bir şey olması muhtemeldir) olduğu ve uygulamaların çıkmaya çalıştığı durumlarda bazı nesneler tuttuğu için olamaz birbirimiz canlı. Bu, kurduğunuz bir uzantıdan, hatta ESRI kodunun kendisinden de olabilir. Bu her zaman gerçekleşiyordu ve araç çubuğunda görünen bazı komutlar gibi ancak belli koşullar altında kendini gösterebiliyordu.

Eski bir ArcObject itibaren COM kavramları öğretici :

Uygulama çıktığında, komutta tuttuğu referansı serbest bırakır. Komut bir olay havuzu olarak da hizmet veriyorsa, uygulama komuta kaynak bağlantısı kesilinceye kadar serbest bırakılamayan komuta başka bir referans tutar. Komut, kendi yıkıcıdan başka bir bağlantıyı kesebileceği bir noktayı bilmediğinden, bu, uygulamanın komut yok etmeden çıkamayacağı ve komutun yok edicisinin asla çağrılmadığı için, uygulamanın komuta referansı tuttuğu bir döngüsel referansa neden olur. . Bu, uygulamanın çıkışta takılmasına neden olur.

Daha da merak ediyorsanız, tüm özelleştirmeleri silip bu sorunun devam edip etmediğini görecek olan Normal.mxt dosyanızı silin (veya yedekleyin).


3
+1 iyi açıklama. Biri dışındaki tüm komut çubuklarını kapatıp kapamadığımı merak ediyorum, sonra kaydedin ve çıkıp sorunu yeniden oluşturmaya çalışın. ICommand.OnCreate'in araç çubuğu görünene kadar çağrıldığını sanmıyorum. Kademeli olarak araç çubuklarını açıp testleri tekrarlarsanız, şüpheli komut listenizi daraltabilirsiniz.
Kirk Kuykendall 18:11

İyi açıklama. Teşekkürler. @Kirk - Unuttuğum bir üçüncü parti aracım var (ArcBruTile) Bunu kaldıracağım. Eklentim gerçekten bazı olayları dinliyor, bu yüzden araç çubuğumun sorunun kaynağı olabileceğini düşünüyorum. İşin garibi, diğer makinemde aynı araçlara sahip olduğum gibi aynı yüklü araç çubuğuna sahip olduğum ve orada bu sorunu yaşamadığım. Yeni bir Normal.mxt ile başlamaya çalışacağım, bu iyi bir öneri.
Jakub Sisak GeoGraphics 18:11

Ayrıca, bazen sadece görünür olma hareketi döngüsel referansa neden olmak için yeterli olmayabilir - bu durumun kendini göstermesi için bir olayın gerçekleşmesi gerekebilir. Örneğin, komut görünür olabilir ve "StartEditing" olayının gerçekleşmesini bekleyen her şey yolunda ve zahmetlidir. Bu bir kez tetiklendiğinde, başka şeylere referans almaya başlamaya karar verir - ve burada dairesel duruma neden olan diğer referanslarını ayarlar. Bu, deterministik olmayan çöp toplama nedeniyle VB uzantıları ve .NET komutları ile klasik bir sorundur
Ragi Yaser Burhum

2

Bu sorunu çözmek için YouKirk ve @Ragi teşekkür ederiz! Görev Yöneticisi Süreçlerini izlerken yaptığım şey:

  1. Normal.mxt yedeklendi ve silindi
  2. Yeni ArcMap Belgesi başlatıldı (ArcMap varsayılan yapılandırmada açıldı)
  3. Kapalı ArcMap (İşlem beklendiği gibi kapandı)
  4. Toobars Eklendi: 3B Analist, Gelişmiş Düzenleme, Veri Çerçevesi Araçları, Çiz, Vertices Düzenle, Editör, Georeferenceing, Etiketleme, Düzen, Yapışma
  5. Düzenlenmiş araç çubukları
  6. Kapalı ArcMap (İşlem beklendiği gibi kapandı)
  7. Yeni ArcMap Belgesi başlatıldı
  8. Eklentileri olan kendi özel araç çubuğumu ekledim
  9. Kapalı ArcMap (İşlem beklendiği gibi kapandı)
  10. Mevcut bir ArcMap Belgesi başlattı
  11. Araç çubuğumda özel başlat ve durdur düzenlemeyi ve bazı özel araçları kullandım
  12. Kapalı ArcMap (İşlem beklendiği gibi kapandı)

Ayrıca ArcBruTile'i kaldırdım ve sildim

ArcMap İşlemleri artık beklendiği gibi kapandı


2
çok erken konuştum. Sorun geri döndü.
Jakub Sisak GeoGraphics 18:11

Ne yazık ki, ESRI desteği işe yaramadığı zaman yukarıdaki cevabı bir çözüm olarak kopyalayıp yapıştırıyor: /
MaryBeth

@ Jakub Bu konuda hiç bir çözüm buldunuz mu? Bir eklenti oluşturuyorum ve son zamanlarda çıktıktan sonra çalışan birden fazla ArcMap işlemi fark ettim.
Barbarossa

Mutabakatın, işlemlerin 3. parti eklentileri / uzantıları tarafından açıldığı ve düzgün bir şekilde kapatılmadığı anlaşılmaktadır. Kendi eklentilerimi yapıyorum ve tüm nesnelerin serbest bırakıldığından emin olmak için tüm kodlarımı atlamış olabilirim, ve ve daha büyük olasılıkla, 10.3'te artık yaşanmadığı için ESRI tarafından sorun kaynağında çözülmüş ve şimdiden kaybolduğuna inanıyorum. 10.2. Bu hala devam ediyorsa, TÜM 3. parti eklentilerini kaldırın ve kaldırın ve sorunun hala orada olup olmadığını görün. Dönmeye devam etmiyorsa, suçluyu bulmak için birer birer ekleme. Bu yardımcı olur umarım.
Jakub Sisak GeoGraphics 21:15

2

Bu gönderiyi ölülerden geri getirmeye çalışmıyorum, ancak Citrix sunucusuyla bu konuda ESRI desteği ile çalışırken (kullanıcılar çöküyor veya çıkış yapıyorlarsa, arcgiscachemanager.exe 20-30 dakika sonra veya daha fazla kapanmıyorsa, kullanıcılar ArcMap’e geri dönemezler ve daha sonra sunucuya giriş yapabilmeleri ve manuel olarak serbest bırakabilmeleri için 2 sunucu yöneticisine güvenmeleri gerekir.), ESRI bu sayfayı bir çözüm kopyalayıp yapıştırıyor ve çalışmıyor. Citrix ortamında çalışırken en azından hayır.

Citrix için, iki kayıt defteri anahtarı oluşturmanın (biri asılı işlemi öldürmek, diğeri ayarları orijinal durumuna geri getirmek için) sorunu çözdüğünü gördük.

Citrix olmayanlar için, sadece süreci öldürmek için bir senaryo oluşturma fikrini kullanarak yaptık, ancak Citrix'te olmadığımızdan beri zaten sunucudayız, gerekli olmadığına karar verdik.

Bu yardımcı olur umarım.

------- yükseltilmiş destek biletinden kopyalanan veriler -------- Citrix, arka planda ikincil işlemleri üreten uygulamaları yönetmeye yardımcı olacak kayıt defteri anahtarı ayarlarına sahiptir. Bu çözümü makul bir kurulum haline getirecek birçok belirtiniz var. Aşağıdaki Citrix Bilgi Makalelerini inceleyin:

Yayımlanan Bir Uygulamadan Gelen Zarif Logoff, Oturumu Aktif Durumda Görüyor: http://support.citrix.com/article/CTX891671

Kullanıcı Windows Server 2003'ten Windows Server 2008'e Yükseltildiğinde XenApp Ortamında Oturumu Kapattıktan Sonra Etkin Oturumlar: http://support.citrix.com/article/CTX134956

XenApp 6.5 AppCenter Konsolu Çalışmıyor Uygulama Durumu Uygulamasını Gösteriyor: http://support.citrix.com/article/CTX133328

Bu makalelerde, yayınlanan uygulamaların bir oturumun kapanmamasına veya bir kullanıcının düzgün şekilde oturumu kapatmamasına neden olabileceği tartışılmaktadır. Bu gibi durumlarda, oturumlar bir yönetici tarafından sıfırlanmalı / çıkılmalı ya da hala çalışan sunucudan işlemi sonlandırmak zorunda kaldı. Citrix'te olan, ArcMap'taki ana uygulamayı yayınlamanızdır. Bir uygulamadan çıkarken yalnızca bu exe kapalıdır (veya çökerse). Sonuç olarak, uygulama açıldığında ortaya çıkan herhangi bir exe, bu durumla sonuçlanan Citrix'te tamamen kapatılmaz. Bu nedenle, ArcGISCacheMgr.exe dosyasının yürütülmesi uzun sürdüğü veya uygulamanın çöktüğü zaman son kullanıcılarınız yeni bir oturum başlatamaz.

Makalelerde, bu ikincil işlemleri ana uygulama kapandığında otomatik olarak kapatmak için bir kayıt defteri anahtarına nasıl ekleyebileceğinizi tartışılmaktadır. Keşfetebileceğiniz diğer bir seçenek de süreçleri kontrol etmek ve varsa sona erdirmek için bir oturum açma komut dosyasıdır.


2

Bir .bat dosyası oluşturun ve bunu yapıştırın ve masaüstüne kaydedin.

 taskkill /IM ArcGisCacheMgr.exe /f
 taskkill /IM ArcGisConnection.exe /f
 "C:\Program Files (x86)\ArcGIS\Desktop10.1\bin\ArcMap.exe"

4
Bu komutların (ve seçeneklerinin) neler yaptıklarının bir açıklaması, başlatılmamışların çözümünüzü anlamalarına yardımcı olacaktır.
whuber

1

PsKill dan SysInternals Suite (Bence zorunlu araç yakınında bir ağ örme) bir kısayol bağlı ve asılı süreçlerini temizlemek için irade ateş edilebilir. Bunu yapmak, asıl sorunu çözmek için hiçbir şey yapmaması çirkindir, ancak birisinin hızlı ve verimli bir şekilde devam etmesine izin verir.

pskill -t arcmap.exe

Son zamanlarda haftada birkaç kez arcmap.exe işlemlerini görüyorum, daha önce hiç olmadı, ancak bir süredir oluyor. Genelde eşzamanlı lisans kullanıyorum. Birden fazla Arcmap oturumu aktifken bu daha sık gerçekleşiyor gibi görünüyor. 64bit Win7'de Sophos antivirüs kullanıyoruz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.