Soru Windows'da bir dosyanın hangi dosyayı açtığını nasıl buluyorsunuz?


Windows'un beni rahatsız ettiği bir şey eski paylaşım ihlali hata. Çoğu zaman neyi açık tuttuğunu tanımlayamazsın. Genellikle sadece ilgili bir dizini işaret eden bir editör veya kaşif ama bazen makinemi yeniden başlatmak için başvurmak zorunda kaldım.

Suçluyu nasıl bulacağınıza dair herhangi bir öneriniz var mı?


480
2018-05-01 00:47


Menşei


Tüm bu zamanlardan sonra, Windows adamlarının bunu Explorer'ın içinden kolayca yapabilmemiz için bir yol olacağını düşünürdünüz. Bu neden olmadı acaba? - Cawflands
Explorer'ın çoğu zaman açık bir nedenden ötürü bir dosya üzerinde tutan problem sürecini buldum. - Eddie
Bunun size çok fazla faydası olmadığını biliyorum, ancak sanırım bu, Vista ve 2008 sunucusundan sonraki bir sonraki Windows sürümünün planlı bir özelliği olduğunu hatırladım. ya da belki bir WinFS olayıdır. nerede okuduğumdan emin değilim ... - Kip


Cevaplar:


Başarı ile yaşadım ANNELER  Süreç araştırmacısı. Bununla, hangi işlemlerin bir dosyanın açık olduğunu bulmak için arama yapabilir ve isterseniz tutamaçları kapatmak için kullanabilirsiniz. Tabii ki, tüm süreci kapatmak daha güvenlidir. Dikkatli olun ve karar verin.

Belirli bir dosyayı bulmak için menü seçeneğini kullanın Find->Find Handle or DLL...  Dosyanın yolunun bir kısmını yazın. İşlemlerin listesi aşağıda görünecektir.

Komut satırını tercih ederseniz, Sysinternals paketi komut satırı aracı içerir SapBu açık kolları listeler. Nasıl kullanılacağına dair birkaç örnek:

  • c:\Program Files\SysinternalsSuite>handle.exe |findstr /i e:\ - E sürücüsünden açılan tüm dosyaları bul:
  • c:\Program Files\SysinternalsSuite>handle.exe |findstr /i file-or-path-in-question

418
2018-05-01 01:03



Kolu kapatabilir, ancak aklınızda bulundurun, halıyı bir uygulama altından çekiyorsunuz, sonuçlar en iyi ihtimalle tahmin edilemez olacak. - WaldenL
@Walden: Kesinlikle. YMMV. WinXP ile, birçok kez Explorer'ın açık bir neden olmadan bir tanıtıcı açtığını ve kapatmayı reddettiğimi gördüm. Silmeniz gereken bir dosyada bu olduğunda, tutamacı kapatmaya veya yeniden başlatmaya zorlama seçeneğiniz vardır. Şimdiye kadar, bu düzinelerce kez yapmış olursak, hiçbir hasta olmamıştı. Herhangi bir gelişmiş araçta olduğu gibi, dikkatli ve muhakeme ile kullanın. - Eddie
Tutamaçları kapatmak uygulamanın başka bir dosyadaki tanıtıcıyı yeniden kullanmasına neden olabilir ve bu da yolsuzluğa neden olabilir - aşağıdaki Jeff'in yanıtına bakın: serverfault.com/a/15695/79266 ... yeniden açmak istemiyorsanız, dosyayı açık tutan uygulamayı öldürmek için çok daha güvenli. - RichVel
Gezgini, btw, ctrl-shift tuşunu basılı tutun ve başlangıç ​​menüsünün boş bir alanını sağ tıklayın ve "Exit Explorer" - ps, Jeff'in cevabı değil. - Mark Sowul
Yönetici olmayan dosya için yardımcı olmaz. bir metin dosyası. Bir günlük dosyasına kimin yazdığını bilmem gerek. Herhangi bir fikir? - Xaqron


Windows 7, Windows 8 ve Windows 10 için yerleşik kullanabilirsiniz Kaynak Monitörü bunun için.

  1. Açık Kaynak Monitörü, bulunabilir
    • Arayarak resmon.exe başlangıç ​​menüsünde veya
    • Üzerinde bir düğme olarak performans sekmesinde Görev Yöneticisi
  2. Yanındaki onay kutusunu seçin. görüntü üzerinde başlık Süreçler bölüm (İşaretli işlemler dosya tanıtıcılarını aşağıda gösterir.)
  3. Arama alanını İlişkilendirilmiş Kollar bölümdeki İşlemci çıkıntı
    • Aşağıda mavi ok ile işaret etti.

Açık olmadığı takdirde, tanıtıcıyı bulduğunuzda, Görüntü ve / veya PID sütununa bakarak süreci tanımlayabilirsiniz.

Bunu yapabilmeniz durumunda uygulamayı kapatabilir ya da sadece satırı sağ tıklatabilir ve işlemi doğrudan öldürme seçeneğine sahip olacaksınız. Basit!

Resource Monitor screenshot

Orijinal yanıtımdan kopyalandı: https://superuser.com/a/643312/62


148
2017-09-10 11:48



Bu programı Windows 8'de bulmak zor olabileceğini belirtmek gerekir - 'resmon.exe' için bir arama bulmak gerekir. - Kylotan
@Kylotan, Aramanızı zaman kaybetmeyi bırakın. Sadece koş resmon  doğrudan cmd'den - Pacerier
@Pacerier: Güzel. Windows yolunda olan şeylere alışkın değilim. - Kylotan
Bu bana 'Sap | Aynı zamanda etkili olsalar da FindStr 've' Unlocker 'alternatifleri - Marcus Vinicius Pompeu
Windows 10'da hala geçerli ve Görev Yöneticisi -> Performans sekmesindeki "Açık Kaynak Monitörü" düğmesini kullanarak bulunabilir. - Norman Breau


Deneyin dosyaları aç Komut.


81
2018-05-01 01:18



Birçoğu için bir komut satırı olan +1, bu yüzden çoğu zaman ProcessExplorer'ı kişisel olarak kullanıyorum. - RBerteig
Gerçekten faydalı. - marko
HATA: Hedef sistem, 32 bit işletim sistemi çalıştırıyor olmalıdır. - Bozojoe
64 işletim sistemi için çalışmıyor! - Jarrod Roberson
Bu, Windows 2012R2 64bit için çalışıyor görünmektedir, ancak "açık yerel izleme" hizmetini çalıştırarak etkinleştirmeniz gerekir openfiles /local on ve yeniden başlatılıyor. Bu özellik çok kullanışlı değil. - Guss


Sadece kapanış kolları ile çok dikkatli olun; Bu, geri dönüşümün ele alınmasından ötürü düşündüğünüzden çok daha tehlikeli - eğer dosya tanıtıcısını kapatırsanız ve program başka bir şey açarsa, kapattığınız orijinal dosya tanıtıcısı bu "başka bir şey" için yeniden kullanılabilir. Ve şimdi program devam ederse ne olacağını tahmin edin, dosya üzerinde çalıştığını düşünürsek (ki bu da işleneni kapatır), aslında dosya tanıtıcısı başka bir şeye işaret ediyor.

görmek Raymond Chen adlı kişinin gönderisi Bu konuda

Bir arama dizini hizmetinin endeksleme için açık bir dosyaya sahip olduğunu varsayalım.   geçici olarak sıkışmış ve dosyayı silmek istediğinizde   (kesinlikle) kolu kapalı zorlar. Arama endeksi hizmeti   bazı bilgileri kaydetmek için günlük dosyasını ve   silinen dosya, günlük dosyasına tanıtıcı olarak geri dönüştürülür. Sıkışmış   İşlem sonunda tamamlanır ve arama dizini hizmeti nihayet alır   Bu tutacağı kapatmak için açıktı, ama farkında olmadan biter   günlük dosyası tanıtıcısını kapatma.

Arama dizini servisi başka bir açılır.   dosya, yazmak için bir konfigürasyon dosyası söyleyin, böylece bazılarını güncelleyebilir   ısrarlı devlet. Günlük dosyasının tanıtıcısı,   yapılandırma dosyası için Arama endeksi servisi   Bazı bilgileri günlüğe kaydeder, böylece günlük dosyasına yazar. Ne yazık ki   günlük dosyası tanıtıcısı kapatıldı ve tanıtıcı yapılandırması için yeniden kullanılıyordu   dosya. Kayıtlı bilgi konfigürasyon dosyasına gider,   onu bozmak.

Bu arada, zorla kapattığınız başka bir tutam yeniden kullanıldı   verilerin saklanmasını engellemek için kullanılan bir mutex tanıtıcısı olarak   bozuk. Özgün dosya tanıtıcısı kapatıldığında, mutex tanıtıcısı   kapalıdır ve veri bozulmasına karşı korumalar kaybolur.   Servis ne kadar uzun olursa, endeksleri o kadar bozulur.   Sonunda, birileri endeksin yanlış sonuçlara döndüğünü fark eder.   Ve hizmeti yeniden başlatmaya çalıştığınızda, başarısız çünkü   yapılandırma dosyaları bozulmuş.

Sorunu   Arama endeksi hizmeti veren şirket   dizin bozuk, günlük dosyası gizemli bir şekilde durdu   günlüğe kaydedilir ve yapılandırma dosyasının üzerine çöp yazılır. Bazı   Zavallı teknisyene niçin neden olduğunu anlamanın umutsuz görevi   Hizmet, dizinleri ve yapılandırma dosyalarını bozar, habersiz   yolsuzluğun kaynağı, bir sapı kapalı tutmanız.


77
2018-05-30 17:04



Önemli uyarı, bu üst yakın gitmek gerekir - bir yeniden başlatma muhtemelen sessizce bozuk bir dosyadan daha iyidir. - RichVel
+1 Bu kesinlikle kollarımın kapalı kalmasıyla ilgili iki kez düşünmemi sağlayacak! Pencerenin, sayıyı artırmaya ve sadece gerektiğinde sarılmaya devam etmek yerine, derhal kapalı bir tutamaç sayısını hemen kullanacağı garip görünüyor. Bu, en azından bu sorunun ortaya çıkma ihtimalini büyük ölçüde azaltacaktır. - EM0
@RichVel Suç işleminin sonlandırılması, muhtemelen tamamen yeniden başlatılmasından daha iyidir. - Dmitry Grigoryev
@DmitryGrigoryev - iyi nokta, ve aslında bundan bahsetmiştim İşte - RichVel
Bu çok önemli bir uyarı, ama soruyu cevaplamıyor Windows'da bir dosyanın hangi dosyayı açtığını nasıl buluyorsunuz? - Ploni


Kullandım Sap Geçmişte bu tür süreçleri bulmak için başarı ile.


27
2018-05-01 00:52



Bu aracı her zaman kullanırım. Bir USB sürücüyü çıkaramazsam, sadece "H:" (ya da sürücü harfi ne olursa olsun) yazarım. En iyisi, yakın tutamaçları zorlamak için kullanabilirsiniz. - Chris Thompson


Kim Beni Kilitliyor? iyi çalışıyor ve insanları adıyla eğlendiriyor!


7
2018-05-06 00:43



64 bit Windows 8 ve 10'da çalışmaz. - rustyx


Sadece açıklığa kavuşturmak için, bu üçüncü taraf uygulamalarını kullanmayan yanlış davranışların bir sonucu olarak ortaya çıkmaktadır. Dosya oluştur API çağrısı, Windows'un kendisinde bir şey olmaktan daha doğrudur. Belki de CreateFile tasarımının bir sonucudur, ancak bitti ve biz geri dönemeyiz.

Temel olarak, bir Windows programında bir dosya açarken, paylaşımlı erişime izin veren bir bayrak belirtme seçeneğiniz vardır. Bayrak belirtmezseniz, program dosyanın özel erişimini alır.

Şimdi, Explorer buradaki suçlu gibi görünüyorsa, bu sadece yüzeye çıkmış olabilir ve gerçek suçlu, bir klasördeki tüm dosyaları kendi amaçları için açan bir kabuk uzantısı oluşturan bir şeydir. Bunu yaparken gung-ho, ya da kendi kendini temizlemiyor. Symantec AV, bunu daha önce gördüğüm bir şeydir ve diğer AV programlarının da suçlanmasıyla şaşırmam. Kaynak kontrol eklentileri de hatalı olabilir.

Yani gerçekten bir cevap değil, ama her zaman kötü yazılmış bir üçüncü parti program (ne de örtülü dosya kilitleme olan herhangi bir diğer işletim sistemi üzerinde de olabilir, ancak herhangi bir unix tabanlı işletim sistemi tarafından bir şey olabilir Windows için suçlama bazı tavsiye varsayılan).


7
2017-10-12 14:27



Windows Gezgini'nin her zaman Thumbs.db dosyalarını çalışma dizininde kilitlediği, ancak çalışma dizinini değiştirdiğimde her zaman kilidini açmayacağı için bir 3. parti uygulaması suçlamam. En azından pencereyi kapattığımda kilidi açılır, TÜM kaşifleri öldürmek zorunda değilim ... - Alexander
@Darth, Microsoft'tan bir pazarlamacı mısınız? - Pacerier


Uzak bir sunucuda, bir ağ paylaşımını kontrol ettiğinizde, Bilgisayar Yönetimi konsolu kadar basit bir şey bu bilgiyi görüntüleyebilir ve dosyayı kapatabilir.


6
2018-05-01 01:01



Tam olarak neden bu kadar karmaşık cevaplar var? - Rohit Gupta


Bir dosyayı tutan Apropos Explorer: "Silmek zorunda olduğunuz bir dosyada bu olduğunda, tanıtıcıyı kapatmaya veya yeniden başlatmaya zorlama seçeneğiniz vardır."

Explorer’ı sonlandırabilirsin.

Eğer bu bir kerelik bir şeyse (Explorer normalde bu dosyayı açık tutmuyorsa), o zaman giriş yapmaktan vazgeçersiniz ve tekrar giriş yapmak hile yapar.

Aksi takdirde, masaüstü Explorer işlemini öldürün ve gittikçe ne isterseniz onu yapın. Önce cmd.exe dosyasının bir kopyasını başlatın (istediğiniz temizleme işlemini yapmak için bir UI'ye ihtiyacınız var). Masaüstü olmayan Explorers'ın çalıştırıldığından emin olun. Ardından, son Gezgini, örneğin Görev Yöneticisi ile öldürün. Komut isteminde ne yapmak istiyorsan onu yap. Son olarak, Explorer'ı komut isteminden çalıştırın ve masaüstüne dönüşecektir.

Bazı systray programlarının kabuk yeniden başlatılması ile baş edemez eğer bazı artık tatsızlık olabilir tahmin ediyorum.


6
2018-06-03 14:01



Bu, tanıtıcıyı kapatmaktan ve yeniden başlatmadan daha az yıkıcı olmaktan çok daha güvenlidir. Diğer programlara da uygular - Sık sık kapattığım bir Microsoft Office programında dosyaları kapattıktan sonra bile kilitler tutar. - RichVel