Hogyan lehet azonosítani a folyamatot, amely zárolt egy fájlt a Windows rendszerben

click fraud protection

Amikor megpróbál törölni egy folyamat által használt fájlt vagy mappát, megjelenik a Fájl használatban párbeszédpanel, amely a fájlt zároló program nevét mutatja.

Vannak azonban olyan esetek, amikor a „Fájl használatban van” párbeszédpanel nem jeleníti meg annak a folyamatnak a nevét, amely zárolva van a törölni kívánt fájlban. Egyes esetekben a párbeszédpanelen ez jelenik meg: „A művelet nem hajtható végre, mert a fájl meg van nyitva másik folyamat“.

Keresse meg, melyik folyamat zárolt egy fájlt

A folyamatok és a zárolt fájlok vizsgálatához a Windows Sysinternals Process Explorer valószínűleg az első lehetőség, amely a legtöbb felhasználó számára eszébe jut. Van azonban kettő beépített megoldások az aktuális megnyitott fájlok listájának megjelenítéséhez a megfelelő folyamatnevekkel együtt.

Keresse meg, melyik folyamat zárolt le egy fájlt a következő használatával:

  1. Erőforrásfigyelő (resmon.exe)
  2. Process Explorer a Microsoft Sysinternalstól
  3. Fogantyú a Microsoft Sysinternalstól
    • Keresse meg a fájlkezelőt a jobb gombbal kattintva
  4. Openfiles.exe beépített konzoleszköz
    • A helyi fájlkezelők nyomon követésének engedélyezése
    • Megtekintheti a megnyitott fájlokat és a megfelelő folyamatneveket
    • Válassza le a megosztott mappákból megnyitott fájlokat
  5. OpenedFilesView a Nirsoft.net webhelyről (harmadik fél)

1. Erőforrás-figyelő

A Resource Monitor (resmon.exe) egy beépített eszköz, amely számos hasznos funkcióval rendelkezik. A Resource Monitor segítségével megteheti nyomon követheti az aktuális hálózat- és internethasználatot, a kapcsolódó fogantyúk megtekintése zárolt fájlokat, valamint a folyamatokat ugyanúgy kezelheti, ahogyan a Feladatkezelőt használná.

A zárolt fájlhoz tartozó folyamat nevének megkereséséhez kattintson a CPU fülre, írja be a fájlnevet vagy annak egy részét a Kapcsolódó fogantyúk szövegmezőbe.

Keresse meg, melyik folyamat zárolt egy fájlt

Az Erőforrás-figyelővel korábban foglalkoztunk. Tekintse meg ezeket a cikkeket:

  • Hogyan használhatjuk az Erőforrás-figyelőt annak megállapítására, hogy melyik folyamat zárolt egy fájlt?
  • Melyik program használja az Ön teljes internetes sávszélességét? Keresse meg a Resource Monitor segítségével

2. Process Explorer

Process Explorer nem igényel bemutatkozást. A Process Explorer programban mindössze a Keresés funkciót kell használnia, és be kell írnia a fájl nevét. Ez a fájlhoz való hozzáférés folyamatát mutatja.

Keresse meg, melyik folyamat zárolt egy fájlt

Az alsó ablaktábla nézetből szükség esetén bezárhatja a fájlkezelőt.

Az emelt szintű folyamatok kezeléséhez rendszergazdaként kell futtatnia a Process Explorer programot. A Process Explorer emeléséhez kattintson a Fájl menü → menüpontra Részletek megjelenítése az összes folyamathoz.

Tekintse meg ezeket a Process Explorer kapcsolódó cikkeket:

  • Hogyan lehet törölni egy makacs, nem törölhető fájlt vagy mappát a Windows rendszerben?
  • Keresse meg, melyik program használja jelenleg a webkameráját
  • Hogyan lehet megtalálni, hogy melyik program okozott ismeretlen hibaüzenetet?
  • Mit jelent az, hogy nem sikerült felsorolni az objektumokat a tárolóban?

3. Kezelő a Windows Sysinternalsból

Fogantyú a Microsoft Sysinternals segédprogramja, amely információkat jelenít meg a rendszer bármely folyamatának nyitott leíróiról. Segítségével megtekintheti a megnyitott fájlokkal rendelkező programokat, vagy megtekintheti a programok összes kezelőjének objektumtípusait és nevét. A Handle olyan, mint a parancssori változata Process Explorer.

Jegyzet: A Handle v4.21 rendelkezik a kis bogár ahol mindig azt jelenti, hogy „Nincs egyező fogantyú”, ha a meghajtó betűje nagybetűs. Remélhetőleg a Microsoft kijavítja a következő frissítésben.

Egy admin Parancssor ablakban használja a parancssori szintaxist, hogy megkeresse a fájlt megnyitó folyamatot:

handle.exe -a -u fájlnév_útvonallal

Ha a fájlnév szóközt tartalmaz, tegye dupla idézőjelek közé.

Példa:

handle.exe -a -u "c:\users\ramesh\desktop\Mandate-form.pdf"
keresse meg, hogy melyik folyamat zárolt fájlja – sysinternals kezelje

(A fájlnév útvonal nélküli említése nem feltétlenül működik minden helyzetben. Célszerű mindig a teljes elérési utat megadni.)

A kimeneten megjelenik a folyamat neve, a folyamat azonosítója, a felhasználó neve, a zárolt (cél) fájl neve és elérési útja.

Sysinternals Handle: Parancssori argumentumok

használat: fogantyú [[-a [-l]] [-u] | [-c [-y]] | [-s]] [-p |] [név] [-nobanner]
-a Törölje ki az összes kezelési információt.
-l Csak jelenítse meg az oldalfájl-támogatott szakaszfogantyúkat.
-c Bezárja a megadott leírót (hexadecimális számként értelmezve).
A folyamatot a PID segítségével kell megadnia. FIGYELMEZTETÉS: A fogantyúk bezárása az alkalmazás vagy a rendszer instabilitását okozhatja.
-y Ne kérjen bezárási megerősítést.
-s Minden nyitott fogantyútípus nyomtatási száma.
-u Mutassa meg a tulajdonos felhasználó nevét a fogantyúk keresésekor.
-o A folyamathoz tartozó kiürítő fogantyúk (részleges név elfogadva).
név Keressen fogantyúkat az objektumokhoz (töredék elfogadva).
-nobanner Ne jelenítse meg az indítási szalaghirdetést és a szerzői jogi üzenetet.

Az argumentumok nélkül az összes fájlhivatkozást kiírja.

Adja hozzá a Sysinternals Handle-t a jobb gombbal kattintson a menühöz

Hozzáadhatja a Sysinternals Handle-t a jobb gombbal a fájlok menüjéhez, hogy gyorsan megtalálja a fájlt zároló programot. A helyi menühöz való hozzáadásához kövesse az alábbi lépéseket:

  1. Letöltés Fogantyú a Microsoft Sysinternals webhelyről.
  2. Másolja a fájlokat handle.exe & handle64.exe mappába – pl. d:\tools
  3. Másolja a következő kódsorokat a Jegyzettömbbe, és mentse a fájlt más néven find_handle.vbs állandó helyre.
    "Futtatja a Sysinternals Handle.exe segédprogramot fájlnév argumentummal. '© Ramesh Srinivasan -- https://winhelponline.com/blog. Létrehozás dátuma: 2008. március 29. "Frissítés dátuma: 2019. június 11. „A Windows összes verziójához, beleértve a Windows 10 Option Explicit verziót is. Dim objShell, WshShell, objFSO, sBaseKey, sFilename. Set objShell = CreateObject("Shell. Alkalmazás") Set WshShell = CreateObject("WScript. Héj") Set objFSO = CreateObject("Scripting. FileSystemObject") Ha a WScript. Érvek. Szám = 0, majd sBaseKey = "HKCU\Software\Classes\*\shell\" WshShell. RegWrite sBaseKey & "FindHandle\", "Find Handle", "REG_SZ" WshShell. RegWrite sBaseKey & "FindHandle\command\", "wscript.exe " & & _ WScript. ScriptFullName & & " " & & "%1" &, "REG_SZ" Else If objFSO.FileExists (WScript. Argumentumok (0)) = igaz Akkor sFilename = lcase (WScript. Érvek (0)) objShell. ShellExecute "cmd.exe", "/k d:\tools\handle.exe -a -u " & _ & sFájlnév &, "", "runas", 1 End If. Vége Ha

    Jegyzet: A Sysinternals Handle.exe elérési útja kemény kódolású d:\tools\handle.exe a fenti szkriptben. Ha a program egy másik elérési úton található, akkor ennek megfelelően módosítsa az elérési utat a szkriptben. 64 bites Windows esetén bármelyiket használhatja handle.exe vagy handle64.exe

  4. Dupla kattintás find_handle.vbs a helyi menü bejegyzésének hozzáadásához a rendszerleíró adatbázisban. Ezt csak egyszer kell megtennie. Ha azonban áthelyezi a szkriptet egy másik mappába, ismét duplán kell rákattintania a beállításjegyzékben található elérési út frissítéséhez.
  5. látni fogja a Keresse meg a fogantyút opciót, amikor jobb gombbal kattint egy fájlra. Ha rákattint, elindítja a szkriptet, amely a handle.exe fájlt a fájlnév argumentummal futtatja, hogy megtalálja azt a folyamatot, amelynél a fájl zárolva van.keresse meg, hogy melyik folyamat zárolt fájlja – sysinternals kezelje

Eltávolítani a Keresse meg a fogantyút helyi menüben indítsa el a Rendszerleíróadatbázis-szerkesztőt (regedit.exe), és törölje a következő kulcsot:

HKEY_CURRENT_USER\Software\Classes\*\shell\FindHandle

4. OpenFiles.exe – egy beépített konzoleszköz

Egy másik beépített eszköz, amelyet használni fogunk, az Openfiles.exe, egy konzoleszköz, amely nem új a Windows számára. Eredetileg 2000-ben mutatták be a Windows Resource Kit 2000/2003 eszközök részeként. Ez a segédprogram ezután alapértelmezés szerint szerepelt a Windows Vista és újabb verziókban (beleértve a Windows 10-et is). Az Openfiles megjeleníti az aktuálisan megnyitott fájlok listáját a helyi vagy megosztott mappákból, a Handle ID-vel és a folyamat végrehajtható nevével együtt. Ez az eszköz lehetővé teszi egy vagy több fájl leválasztását is, amelyeket távolról nyitott meg egy megosztott mappából.

Az „Objektumlista karbantartása” globális jelző engedélyezése először

Először is, a helyi fájlkezelők nyomon követésének engedélyezéséhez be kell kapcsolnia az „objektumlista karbantartása” jelzőt a következő parancs futtatásával az adminisztrációs parancssorból.

openfiles /local be

A következő üzenetet fogja látni:

INFORMÁCIÓ: A rendszer globális „objektumlista karbantartása” jelzője jelenleg engedélyezve van.

Ezt a parancsot csak az első alkalommal kell futtatnia. Ezután indítsa újra a Windows-t, hogy a változtatás érvénybe lépjen.

Megtekintheti a megnyitott fájlokat és a megfelelő folyamatneveket

A Windows újraindítása után egy admin Parancssor ablak, típus:

nyitott fájlok

Ez felsorolja a fájl/fogó azonosítót, a folyamat nevét és a helyileg vagy helyi megosztási pontokon keresztül távolról megnyitott fájlok listáját táblázatos formátumban.

A kimenet lista vagy CSV formátumban történő megtekintéséhez használja a /query paramétert.

openfiles /query /FO LIST. openfiles /query /FO CSV

A kimenet vágólapra másolásához vezesse a kimenetet a Clip.exe fájlba az alábbiak szerint. Ezután illessze be a kimenetet a Jegyzettömbbe vagy bármely más választott szerkesztőbe.

openfiles |klip
Keresse meg, melyik folyamat zárolt egy fájlt
openfiles /query /FO LIST |klip. openfiles /query /FO CSV |klip
Keresse meg, melyik folyamat zárolt egy fájlt

A Parancssor kimenetének vágólapra másolásával vagy a kimenet fájlba mentésével kapcsolatos további információkért tekintse meg a cikket. Hogyan lehet a parancssor kimeneti szövegét a vágólapra másolni vagy fájlba menteni?

A következő parancssor segítségével megtudhatja, hogy egy adott fájlt használ-e egy program (és hogy melyik programot).

openfiles | findstr /i 

Példa:

openfiles | findstr /i eiffel

A fenti parancs felsorolja az összes olyan nyitott fájlt, amelyek fájlnevében az „eiffel” szó szerepel. Ebben a példában a Word 2016 jelenleg zárolja a „The Eiffel-torony.docx” (ID 4576) fájlt.

Keresse meg, melyik folyamat zárolt egy fájlt

És a „Fájl használatban van” párbeszédpanel ugyanezt mondja nekem.

Keresse meg, melyik folyamat zárolt egy fájlt

Válassza le a távolról megnyitott fájlokat a megosztott mappából.

A megosztott mappából megnyitott fájlok leválasztásához, hogy törölhesse, átnevezhesse vagy módosíthassa a tartalmát, használja a /disconnect paraméterrel megszakítja a kapcsolatot az adott fájllal. Itt vannak a parancssori beállítások.

OPENFILES /Kapcsolat bontása [/S rendszer [/U felhasználónév [/P [jelszó]]]] {[/ID id] [/A accessedby] [/O openmode]} [/OP openfile] Leírás: Lehetővé teszi az adminisztrátor számára, hogy leválasztsa azokat a fájlokat és mappákat, amelyeket távolról nyitottak meg megosztott eszközön mappát. Paraméterlista: /S rendszer Meghatározza a távoli rendszert, amelyhez csatlakozni kell. /U [tartomány\]felhasználó Megadja a felhasználói környezetet, amelyben a parancsnak végre kell hajtania. /P [jelszó] Megadja a jelszót az adott felhasználói környezethez. /ID id Megadja a megnyitott fájlok leválasztását fájlazonosító alapján. A „*” helyettesítő karakter használható. /A accessedby Meghatározza, hogy az összes megnyitott fájlt leválasztja az "accessedby" érték alapján. A „*” helyettesítő karakter használható. /O openmode Meghatározza az összes nyitott fájl leválasztását az "openmode" érték alapján. Az érvényes értékek: Olvasás, Írás vagy Olvasás/Írás. A „*” helyettesítő karakter használható. /OP openfile Meghatározza, hogy megszakítsa az összes nyitott fájlkapcsolatot, amelyet egy adott "nyitott fájl" névvel hoztak létre. A „*” helyettesítő karakter használható. /? Megjeleníti ezt a súgóüzenetet. Példák: OPENFILES /Leválasztás /? OPENFILES /Kapcsolat bontása /ID 1 OPENFILES /Kapcsolat bontása /Egy felhasználónév OPENFILES /Kapcsolat bontása /O OPENFILES olvasása/írása /Kapcsolat bontása /OP "c:\My Documents\somedoc.doc" /ID 234 OPENFILES /Kapcsolat bontása /S rendszer /U felhasználónév /ID 5 OPENFILES /Kapcsolat bontása /S rendszer /U felhasználónév /P jelszó /ID*

Az Openfiles.exe tökéletesen ellátja az összes megnyitott fájl felsorolását a folyamatnevekkel együtt, de nem tudja erőszakkal megölni a folyamatokat. Ez a kiváló (de figyelmen kívül hagyott) beépített konzoleszköz azonban hasznos lehet, ha gyorsan szeretne megtalálni egy folyamatnevet, amely a egy fájlt, vagy leválaszthat egy fájlt, amelyhez egy hálózati felhasználó egy megosztott mappán keresztül fér hozzá – anélkül, hogy harmadik féltől függene. megoldás.

5. OpenedFilesView

OpenedFilesView a Nirsoftból megjeleníti a rendszeren lévő összes megnyitott fájl listáját. Minden megnyitott fájlhoz további információk jelennek meg: kezelési érték, olvasási/írási/törlési hozzáférés, fájl pozíciója, folyamat amely megnyitotta a fájlt, és még sok más… Opcionálisan bezárhat egy vagy több megnyitott fájlt, vagy bezárhatja az ezeket megnyitó folyamatot fájlokat.

Keresse meg, melyik folyamat zárolt egy fájlt

Lezárhatja a kiválasztott fájlok folyamatait, vagy bezárhatja a kiválasztott fájlkezelőket. A fogantyú száma hexadecimális értékekkel van ábrázolva, míg az openfiles.exe konzoleszköz normál formátumban jeleníti meg. Ez az eszköz lehetővé teszi egy helyi menüopció hozzáadását is, amellyel gyorsan megtalálhatja az éppen fájlt használó folyamatot a jobb gombbal kattintva. A helyi menü opció / parancssori támogatás szerintem az egyik leghasznosabb szolgáltatás, amelyet az OpenedFilesView kínál.


Egy apró kérés: Ha tetszett a bejegyzés, kérlek oszd meg?

Egy "apró" megosztásod komolyan segítene ennek a blognak a növekedésében. Néhány nagyszerű javaslat:
  • Tűzd ki!
  • Oszd meg kedvenc blogoddal + Facebook, Reddit
  • Tweeteljen!
Szóval nagyon köszönöm a támogatást, olvasóm. Nem fog több időt igénybe venni 10 másodpercnél. A megosztási gombok közvetlenül lent találhatók. :)

Ezoicjelentse ezt a hirdetést