Cari tahu proses mana yang mengunci file atau folder di Windows

717

Bagaimana saya bisa mengetahui proses mana yang mengunci file atau folder di Windows?

Misalnya, ketika mencoba menghapus folder, Windows melaporkan ini:

Tindakan tidak dapat diselesaikan karena folder terbuka di program lain

Terjadi sama dengan file, tetapi bagaimana cara mengetahui program atau aplikasi apa yang saat ini menggunakannya dan mencegah saya menghapus file atau folder?

leeand00
sumber
5
Lihat pertanyaan ServerFault ini .
John Fouhy
1
Apakah file Anda video? Anda mungkin menemukan bahwa Windows Explorer sendiri "menggunakan" file ...
DisgruntledGoat
37
Bagaimana ini duplikat? Dia secara khusus bertanya bagaimana mengetahui proses mana yang mengunci file, bukan bagaimana menghapus file yang terkunci.
b1nary.atr0phy
8
Saya tidak dapat menambahkan built-in, jawaban yang lebih sederhana di sini karena itu salah ditandai sebagai dupe, saya juga tidak dapat menambahkannya ke utas lainnya karena itu hanya berlaku untuk XP. Tapi bagaimanapun, untuk versi Windows dengan Resource Monitor (ketikkan di bilah pencarian), buka tab CPU / Associated Handles, kemudian cari file atau folder.
jontyc
Saya mengetahui bahwa Windows 10 (dan saya kira sejak Windows 7) memiliki program yang disebut Resource Monitor, yang memungkinkan Anda melihat proses apa yang mengunci file atau folder: stackoverflow.com/a/24126882/470749
Ryan

Jawaban:

66

Metode PowerShell:

IF((Test-Path -Path $FileOrFolderPath) -eq $false) {
    Write-Warning "File or directory does not exist."       
}
Else {
    $LockingProcess = CMD /C "openfiles /query /fo table | find /I ""$FileOrFolderPath"""
    Write-Host $LockingProcess
}

The openfilesperintah harus memiliki dukungan untuk file lokal diaktifkan, dengan menjalankan openfiles /local ondan restart.

Lebih detail Cara mengetahui proses mana yang mengunci file atau folder di Windows

jujur
sumber
12
Fitur pertama-tama harus diaktifkan denganopenfiles /local on
mstrange
6
Sayangnya, openfilestampaknya tidak bekerja pada Windows 64-bit:ERROR: The target system must be running a 32 bit OS.
Thomas S.
1
Bekerja pada Win10 64 untuk saya
Michael
3
Sepertinya pada dasarnya Anda bisa mencapainya dalam cmd murni dengan openfiles /query /fo table | find /I "<path>"?
mwfearnley
1
... Jika kita ingin memulai kembali untuk mengaktifkan sesuatu, mengapa kita tidak memulai kembali untuk mengakses folder? Saya tidak mengerti bagaimana ini memecahkan masalah OP ketika "reboot komputer Anda" akan jauh lebih mudah dan masih membutuhkan reboot.
Nic Hartley
692

Anda dapat menggunakan Resource Monitor untuk ini yang terintegrasi dengan Windows 7, 8, dan 10.

  1. Open Resource Monitor , yang dapat ditemukan
    • Dengan mencari Resource Monitor atau resmon.exe di menu mulai, atau
    • Sebagai tombol pada tab Performance di Task Manager Anda
  2. Buka tab CPU
  3. Gunakan kolom pencarian di Associated Menangani bagian
    • Lihat panah biru pada tangkapan layar di bawah

Ketika Anda menemukan pegangan, Anda dapat mengidentifikasi proses dengan melihat kolom Gambar dan / atau PID.

Anda kemudian dapat mencoba untuk menutup aplikasi seperti biasa, atau, jika itu tidak mungkin, klik kanan pegangannya dan bunuh prosesnya langsung dari sana. Peasy mudah!

Tangkapan layar Monitor Sumber Daya

Svish
sumber
18
Catatan: Monitor Sumber Daya tidak menemukan pegangan yang terkait dalam kasus saya sedangkan Process Explorer (seperti dijelaskan di atas ) melakukannya.
ComFreek
15
@ ComFreek Nah, ProcessExplorer mungkin lebih kuat dalam banyak kasus, tetapi bagi saya Resource Monitor selalu menemukan aplikasi mengunci file yang saya coba lakukan sesuatu. Saya juga lebih suka ke Process Explorer hanya karena ada di OS. Tidak perlu mengunduh ekstra dan pintasan tambahan di suatu tempat.
Svish
8
Saya tidak dapat menemukan ini di Process Explorer, tetapi mudah untuk menemukan dengan instruksi ini di Resource Manager. Terima kasih.
Tatiana Racheva
6
@ComFreek Dalam kasus saya itu hanya kasus lain: Process Explorer tidak menemukan pegangannya, sedangkan Resource Monitor melakukannya.
Uwe Keim
9
+1 - ini juga berfungsi dengan baik di Windows 10
Matt Innes
390

Beberapa pilihan:

Microsoft / SysInternals Process Explorer - Pergi ke Find> Find Handle atau DLL. Dalam kotak teks "Tangani atau DLL:", ketik lintasan ke file (mis. "C: \ path \ to \ file.txt") dan klik "Cari". Semua proses yang memiliki pegangan terbuka untuk file itu harus didaftar.

WhoLockMe - Ekstensi Explorer yang menambahkan opsi menu klik kanan

NB WhoLockMe tampaknya tidak berfungsi dengan Win 10 (setidaknya saya tidak dapat mendaftarkannya dengan salah satu dari 32-atau 64-bit versi regsvr32.exe).

Shevek
sumber
26
Di Windows 7, jika Anda mencoba menghapus file yang dikunci, pesan kesalahan akan memberi tahu Anda proses mana yang dikunci
Garry English
10
CATATAN: Unlocker menginstal Adware jika Anda tidak hati-hati. Dari situs web mereka: "Fitur promosi: Delta toolbar sepenuhnya opsional."
Julian Knight
11
@GarryEnglish untuk beberapa alasan, ini tidak selalu terjadi. Saya hanya perlu menggunakan procexp untuk memberi tahu saya bahwa notepad ++ memiliki kunci pada folder. Windows 7 tidak dapat memberi tahu saya penyebabnya.
GuiSim
4
@ jpmc26 Tidak. WhoLockMe tidak berfungsi pada Windows 7.
ceving
3
@ GarryEnglish- Seperti yang dinyatakan oleh GuiSim, ini pasti tidak selalu terjadi, dan dalam pengalaman saya, jarang terjadi.
Lakukan
196

Lihat Process Explorer ( procexp.exe).

Dari pengantar:

Pernah bertanya-tanya program mana yang memiliki file atau direktori tertentu terbuka? Sekarang kamu bisa mengetahuinya.

Untuk mengetahui proses apa yang menggunakan file tertentu, ikuti langkah-langkah ini:

  1. Pergi ke Temukan , Temukan Gagang atau DLL .. atau cukup tekan Ctrl+ F.

    Masukkan deskripsi gambar di sini

  2. Masukkan nama file dan tekan Cari .

    Masukkan deskripsi gambar di sini

  3. Process Explorer akan mencantumkan semua proses yang memiliki pegangan untuk membuka file. Klik pada entri untuk memfokuskan proses di jendela utama.

    Masukkan deskripsi gambar di sini

  4. Secara opsional, Anda bahkan dapat menutup pegangan secara manual melalui panel bawah ( Ctrl+ L):

    Masukkan deskripsi gambar di sini

Eroen
sumber
6
Peretas Proses juga dapat melakukannya.
Benoit
5
Seperti jawaban lain yang disebutkan, Handle adalah alat baris perintah dari SysInternals yang juga akan menyelesaikan tugas ini.
heavyd
Saya lupa proses cmd terbuka di folder, penjelajah proses membantu saya memperhatikannya.
davejal
Catatan untuk Googlers, versi PE saat ini tampaknya tidak lagi mendukung Close Handle
MickyD
Gagal bekerja di Win10 64-bit 1709
K7AAY
30

LockHunter dapat membuka kunci penangan yang mungkin mengunci file atau folder Anda. Tidak seperti freeware serupa, ini mendukung Windows 32 dan 64-bit.

Ini adalah alat gratis untuk menghapus file yang diblokir oleh sesuatu yang tidak Anda ketahui. LockHunter berguna untuk memerangi malware, dan program lain yang memblokir file tanpa alasan. Tidak seperti alat serupa lainnya, ia menghapus file ke tempat sampah sehingga Anda dapat mengembalikannya jika dihapus secara tidak sengaja.

  • Memperlihatkan proses mengunci file atau folder
  • Memungkinkan untuk membuka kunci, menghapus, menyalin atau mengganti nama file yang terkunci
  • Mengizinkan untuk menghentikan proses penguncian
  • Memungkinkan untuk menghapus proses penguncian dari hard drive
  • Terintegrasi ke dalam menu Explorer
  • Ini menghapus file ke tempat sampah, sehingga Anda dapat mengembalikannya jika dihapus secara tidak sengaja
  • Mendukung Windows 32 dan 64bit
Mehper C. Palavuzlar
sumber
5
Dua jawaban teratas tidak berfungsi untuk saya dan jawaban berikutnya yang berikutnya diblokir oleh firewall saya atau diperingatkan untuk tidak menggunakan chrome saya !. LockHunter bekerja dengan sempurna.
user3885927
1
Pemburu keberuntungan telah bekerja untuk saya ketika yang lain belum
Sheldon
Yang ini berhasil.
jdhao
10

EMCO UnlockIT dapat mengidentifikasi proses yang mengunci file serta membuka kunci file sehingga Anda dapat menghapus / mengedit / memindahkannya. Program ini benar-benar gratis, meskipun versi yang lebih baru sedikit lebih lambat dan lebih membengkak daripada aslinya (yang memiliki GUI sederhana, tanpa kertas, tetapi dimuat cukup banyak secara instan dan tanpa layar splash yang mengganggu). Juga, versi asli yang digunakan untuk muncul secara otomatis setiap kali kesalahan yang Anda sebutkan dipicu, memungkinkan Anda untuk langsung membuka kunci file dan melakukan operasi yang Anda coba.

Tetap saja, UnlockIT adalah program luar biasa berguna yang menyediakan fungsionalitas dasar yang sangat hilang dari Windows. Itu di antara toolkit utilitas standar yang saya instal di semua komputer Windows tempat saya bekerja.

Lèse majesté
sumber
@ John: Ya, itu mengidentifikasi program yang mengunci file. Dan Anda masih bisa mematikan proses secara manual melalui task manager. Namun, biasanya lebih mudah untuk hanya membuka kunci file (terutama ketika itu explorer yang telah mengunci file sebagian besar waktu) daripada harus membunuh proses yang telah menguncinya (biasanya karena telah mengakses file dan membiarkan file handler terbuka karena kesalahan program).
Lèse majesté
2

Inilah penemuan & solusi saya.

Kebetulan, tidak ada jawaban di atas yang menyelesaikan masalah saya.

Saya bahkan mencoba menggunakan UNLOCKER yang terbukti tidak berharga.

Masalah saya adalah dari Memeo Autosync Backup

Rupanya, proses pencadangan ini menyisakan cukup "file seperti hantu." "File seperti hantu" ini, akan muncul setiap kali saya ALT-TAB komputer saya (Windows Professional XP), yaitu saya akan melihat DUA Program MS Excel berjalan, ketika saya hanya memiliki SATU yang terlihat, di TASK BAR saya.

Saya menemukan solusi ini ketika saya pikir itu mungkin Perlindungan Endpoint SYMANTEC (Anti-Virus); dan menonaktifkan program. Namun, saya terus menerima pesan kesalahan:

tidak dapat menghapus (file LARGE.xls): Ini sedang digunakan oleh orang atau program lain. Tutup semua program yang mungkin menggunakan file ini dan coba lagi.

Saya kemudian terus melihat pemberitahuan Memeo tentang "sinkronisasi" dan berhenti dari program.

Selanjutnya, TANPA KESALAHAN.

Bagi Anda, itu bisa APA SAJA dari latar belakang ini disimpan.

sebelumnya pengguna excel frustrasi
sumber
2

Jika Anda tidak mengetahui program file yang digunakannya maka Anda dapat pergi ke Komputer Saya; klik kanan; pilih Kelola. Di bawah Alat Sistem> Folder bersama> Buka File, Anda seharusnya dapat melihat pengguna yang telah mengunci file. Anda dapat menutup file dari sini dan kemudian Anda dapat melakukan tugas mengubah nama atau menghapus file. Semoga ini membantu

Rajesh
sumber
1
Ini hanya akan berfungsi untuk folder bersama.
sweetfa
1

Kemungkinan tambahan, hanya untuk menghemat waktu yang baru saja saya habiskan:

Di versi Windows yang lebih lama, Anda mungkin mendapatkan "Akses Ditolak - Anda mungkin tidak memiliki hak, atau file mungkin sedang digunakan". Jika Anda menemukan melalui Process Explorer bahwa file-file tersebut, pada kenyataannya, tidak dibuka oleh siapa pun, kemungkinan besar ada masalah dengan keamanan. Menggunakan akun administrator, pilih file di Explorer, klik kanan dan pilih Properties, Security, Advanced, Owner. Kemungkinannya adalah file tersebut dimiliki oleh akun yang tidak lagi ada atau tidak dapat lagi diverifikasi keberadaannya (karena mengubah pengaturan kepercayaan Direktori Aktif).

Ubah kepemilikan menjadi Administrator dan Anda siap berangkat.

Stu
sumber
0

Banyak program di sini sudah ketinggalan zaman. Saya akhirnya menggunakan OpenedFilesView nirsoft yang bekerja dengan sangat baik.

Tangkapan layar

Padahal yang terbaik adalah integrasi menu explorer, yang mudah diaktifkan. Sesuai situs web

Menu Konteks Explorer

Mulai dari versi 1.10, Anda dapat meluncurkan OpenedFilesView langsung dari Windows Explorer, dan hanya melihat pegangan file atau folder yang ingin Anda periksa. Untuk mengaktifkan fitur ini, periksa 'Aktifkan Menu Konteks Explorer' di bawah menu Opsi. Setelah Anda mengaktifkan fitur ini, Anda dapat mengklik kanan file atau folder apa saja di Windows Explorer, dan memilih item 'OpenedFilesView' dari menu. Jika Anda menjalankan opsi OpenedFilesView untuk folder, itu akan menampilkan semua file yang dibuka di dalam folder itu. Jika Anda menjalankan opsi OpenedFilesView untuk file, itu akan menampilkan semua pegangan yang dibuka untuk file itu.

menu konteks

Alat ini masih berfungsi andal di 2019

Vijay
sumber