Kaip nustatyti procesą, kuris užrakino failą sistemoje „Windows“.

Kai bandote ištrinti failą arba aplanką, kurį naudoja procesas, pasirodo dialogo langas Failas naudojamas, kuriame rodomas programos, kuri užrakino failą, pavadinimas.

Tačiau yra atvejų, kai dialogo lange „Naudojamas failas“ nerodomas proceso, kurio failas, kurį bandote ištrinti, užraktas, pavadinimo. Kai kuriais atvejais dialogo lange bus rodoma „veiksmo užbaigti negalima, nes failas atidarytas kitas procesas“.

Raskite, kuris procesas užrakino failą

Norint ištirti procesus ir užrakintus failus, „Windows Sysinternals Process Explorer“ tikriausiai yra pirmoji parinktis, kuri ateina į galvą daugumai vartotojų. Tačiau yra du įmontuoti sprendimai kad būtų rodomas dabartinis atidarytų failų sąrašas kartu su atitinkamų procesų pavadinimais.

Raskite, kuris procesas užrakino failą, naudodami:

  1. Išteklių monitorius (resmon.exe)
  2. Process Explorer iš Microsoft Sysinternals
  3. Rankena iš Microsoft Sysinternals
    • Dešiniuoju pelės mygtuku spustelėjus meniu raskite failo rankenėlę
  4. Openfiles.exe integruotas konsolės įrankis
    • Įgalinti vietinių failų rankenėlių stebėjimą
    • Peržiūrėkite atidarytus failus ir atitinkamus procesų pavadinimus
    • Atjunkite failus, atidarytus iš bendrinamų aplankų
  5. OpenedFilesView iš Nirsoft.net (trečioji šalis)

1. Išteklių monitorius

Resource Monitor (resmon.exe) yra integruotas įrankis, turintis daug naudingų funkcijų. Su Resource Monitor galite stebėti esamą tinklo ir interneto naudojimą, peržiūrėti susijusias rankenas užrakinti failai, taip pat valdyti procesus taip pat, kaip naudodamiesi užduočių tvarkytuve.

Norėdami rasti proceso pavadinimą, kurio failas yra užrakintas, spustelėkite skirtuką CPU, teksto laukelyje Susietos rankenos įveskite failo pavadinimą arba jo dalį.

Raskite, kuris procesas užrakino failą

Anksčiau aptarėme Resource Monitor. Peržiūrėkite šiuos straipsnius:

  • Kaip naudoti išteklių monitorių, norint sužinoti, kuris procesas užrakino failą?
  • Kuri programa naudoja visą jūsų interneto pralaidumą? Norėdami jį rasti, naudokite Resource Monitor

2. Proceso naršyklė

Proceso naršyklė įžangos nereikia. Programoje Process Explorer viskas, ką jums reikia padaryti, tai naudoti funkciją „Rasti“ ir įvesti failo pavadinimą. Tai rodo procesą, kuris pasiekia failą.

Raskite, kuris procesas užrakino failą

Jei reikia, apatinės srities rodinyje galite uždaryti failo rankenėlę.

Turite paleisti Process Explorer kaip administratorių, kad galėtumėte valdyti procesus, kurie vykdomi padidinto lygio. Norėdami pakelti Process Explorer, spustelėkite meniu Failas → Rodyti išsamią informaciją apie visus procesus.

Peržiūrėkite šiuos su „Process Explorer“ susijusius straipsnius:

  • Kaip ištrinti užsispyrusį neištrinamą failą ar aplanką sistemoje „Windows“?
  • Raskite, kuri programa šiuo metu naudoja jūsų internetinę kamerą
  • Kaip sužinoti, kuri programa sukėlė nežinomą klaidos pranešimą?
  • Ką reiškia nepavyko surašyti objektų konteineryje?

3. Rankena iš Windows Sysinternals

Rankena yra „Microsoft Sysinternals“ programa, kuri rodo informaciją apie bet kurio sistemos proceso atviras rankenas. Galite naudoti jį norėdami pamatyti programas, kuriose atidarytas failas, arba peržiūrėti visų programos rankenų objektų tipus ir pavadinimus. Rankena yra kaip komandų eilutės versija Proceso naršyklė.

Pastaba: Rankena v4.21 turi a maža klaida kur visada pranešama „Nerasta atitikusių rankenų“, jei disko raidė yra didžiosiomis raidėmis. Tikimės, kad „Microsoft“ ją ištaisys kitame naujinime.

Iš an admin komandų eilutė langą naudokite komandinės eilutės sintaksę, kad surastumėte procesą, kurio metu atidaromas failas:

hand.exe -a -u failo pavadinimas_su_keliu

Jei failo pavadinime yra tarpų, sudėkite jį į dvigubas kabutes.

Pavyzdys:

hand.exe -a -u "c:\users\ramesh\desktop\Manndate-form.pdf"
rasti, kuris procesas užrakintas failas - sysinternals rankena

(Failo pavadinimo paminėjimas be kelio nebūtinai gali būti naudingas visose situacijose. Patartina visada įtraukti visą kelią.)

Išvestyje rodomas proceso pavadinimas, proceso identifikatorius, vartotojo vardas, užrakinto (tikslinio) failo pavadinimas su keliu.

Sysinternals rankena: komandų eilutės argumentai

vartosena: rankena [[-a [-l]] [-u] | [-c [-y]] | [-s]] [-p |] [vardas] [-nobanner]
-a Išmeskite visą rankenos informaciją.
-l Tiesiog parodykite puslapių failais paremtas skilčių rankenas.
-c Uždaro nurodytą rankenėlę (interpretuojama kaip šešioliktainis skaičius).
Turite nurodyti procesą pagal jo PID. ĮSPĖJIMAS: Uždarius rankenėles, programa arba sistema gali tapti nestabili.
-y Neprašykite uždaryti rankenos patvirtinimo.
-s Kiekvieno atidarytos rankenos tipo spausdinimo skaičius.
-u Kai ieškote rankenėlių, parodykite turinčio vartotojo vardą.
-p Procesui priklausančios išmetimo rankenos (priimtas dalinis pavadinimas).
vardas Ieškokite objektų rankenėlių su (fragmentas priimtas).
- nobaneris Nerodyti paleisties reklamjuostės ir pranešimo apie autorių teises.

Jokie argumentai nepašalins visų failų nuorodų.

Dešiniuoju pelės mygtuku spustelėkite meniu, pridėkite „Sysinternals Handle“.

Norėdami greitai rasti programą, kuri užrakino failą, dešiniuoju pelės mygtuku spustelėkite failų meniu galite pridėti Sysinternals Handle. Norėdami įtraukti jį į kontekstinį meniu, atlikite šiuos veiksmus:

  1. parsisiųsti Rankena iš Microsoft Sysinternals svetainės.
  2. Nukopijuokite failus rankena.exe & hand64.exe į aplanką, pvz., d:\įrankiai
  3. Nukopijuokite šias kodo eilutes į Notepad ir išsaugokite failą kaip find_handle.vbs į nuolatinę vietą.
    „Paleidžia Sysinternals Handle.exe paslaugų programą su failo pavadinimo argumentu. '© Ramesh Srinivasan - https://winhelponline.com/blog. Sukūrimo data: 2008 m. kovo 29 d. Atnaujinta data: 2019 m. birželio 11 d. „Visoms „Windows“ versijoms, įskaitant „Windows 10 Option Explicit“. Pritemdyti objShell, WshShell, objFSO, sBaseKey, sFilename. Nustatyti objShell = CreateObject("Shell. Paraiška") Nustatyti WshShell = CreateObject("WScript. Lukštas“) Nustatyti objFSO = CreateObject("Scenarijų. FileSystemObject") Jei WScript. Argumentai. Skaičius = 0 Tada 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" Kitu atveju, jei objFSO.FileExists (WScript. Argumentai (0)) = True Tada sFilename = lcase (WScript. Argumentai (0)) objShell. ShellExecute "cmd.exe", "/k d:\tools\handle.exe -a -u " & _ & sFailo pavadinimas &, "", "runas", 1 Pabaiga If. Pabaiga, jei

    Pastaba: Sysinternals Handle.exe kelias yra užkoduotas kaip d:\tools\handle.exe aukščiau esančiame scenarijuje. Jei programa yra kitame kelyje, atitinkamai pakeiskite kelią scenarijuje. 64 bitų „Windows“ galite naudoti bet kurį rankena.exe arba hand64.exe

  4. Dukart spustelėkite find_handle.vbs Norėdami įtraukti kontekstinio meniu įrašą į registrą. Tai turėsite padaryti tik vieną kartą. Tačiau, jei perkeliate scenarijų į kitą aplanką, turėsite dar kartą dukart spustelėti, kad atnaujintumėte kelią registre.
  5. Pamatysite Raskite rankenėlę parinktį, kai dešiniuoju pelės mygtuku spustelite failą. Spustelėjus jį bus paleistas scenarijus, kuris savo ruožtu paleidžia hand.exe su failo pavadinimo argumentu, kad surastų procesą, kurio metu failas užrakintas.rasti, kuris procesas užrakintas failas - sysinternals rankena

Norėdami pašalinti Raskite rankenėlę kontekstinio meniu įrašą, paleiskite registro rengyklę (regedit.exe) ir ištrinkite šį raktą:

HKEY_CURRENT_USER\Software\Classes\*\shell\FindHandle

4. OpenFiles.exe – integruotas konsolės įrankis

Kitas integruotas įrankis, kurį naudosime, yra Openfiles.exe, konsolės įrankis, kuris nėra naujas Windows sistemoje. Iš pradžių jis buvo pristatytas 2000 m. kaip „Windows Resource Kit 2000/2003“ įrankių dalis. Tada ši programa pagal numatytuosius nustatymus buvo įtraukta į „Windows Vista“ ir naujesnę versiją (įskaitant „Windows 10“). „Openfiles“ rodo šiuo metu atidarytų failų sąrašą iš vietinių arba bendrinamų aplankų kartu su rankenos ID ir proceso vykdomojo failo pavadinimu. Šis įrankis taip pat leidžia atjungti vieną ar daugiau failų, atidarytų nuotoliniu būdu iš bendrinamo aplanko.

Pirmą kartą įgalinkite visuotinę vėliavėlę „Prižiūrėti objektų sąrašą“.

Pirma, norėdami įgalinti vietinių failų rankenėlių stebėjimą, turite įjungti vėliavėlę „prižiūrėti objektų sąrašą“, vykdydami šią komandą iš administratoriaus komandų eilutės.

openfiles /local įjungta

Pamatysite šį pranešimą:

INFORMACIJA: šiuo metu įjungta sistemos visuotinė vėliavėlė „prižiūrėti objektų sąrašą“.

Šią komandą turėsite paleisti tik pirmą kartą. Tada iš naujo paleiskite „Windows“, kad pakeitimai įsigaliotų.

Peržiūrėkite atidarytus failus ir atitinkamus procesų pavadinimus

Iš naujo paleidus „Windows“, iš an admin komandų eilutė langas, tipas:

atidaryti failai

Čia pateikiamas failo / rankenos ID, proceso pavadinimas ir failų, atidarytų vietoje arba nuotoliniu būdu per vietinius bendrinimo taškus, sąrašas lentelės formatu.

Norėdami peržiūrėti išvestį sąrašo arba CSV formatu, naudokite parametrą /query.

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

Norėdami nukopijuoti išvestį į mainų sritį, nukreipkite išvestį į Clip.exe, kaip nurodyta toliau. Tada įklijuokite išvestį į Notepad arba bet kurį kitą pasirinktą redaktorių.

openfiles |klipas
Raskite, kuris procesas užrakino failą
openfiles /query /FO LIST |klipas. openfiles /query /FO CSV |klipas
Raskite, kuris procesas užrakino failą

Norėdami gauti daugiau informacijos apie komandų eilutės išvesties kopijavimą į mainų sritį arba išvesties įrašymą į failą, žr. Kaip nukopijuoti komandinės eilutės išvesties tekstą į mainų sritį arba išsaugoti faile?

Norėdami sužinoti, ar tam tikrą failą naudoja programa (ir sužinoti, kuri programa), galite naudoti šią komandinę eilutę.

atidaryti failai | findstr /i 

Pavyzdys:

atidaryti failai | findstr /i eifelis

Aukščiau pateiktoje komandoje pateikiami visi atidaryti failai, kurių failo pavadinime yra žodis „eifelis“. Šiame pavyzdyje „Word 2016“ šiuo metu yra užrakintas faile „The Eiffel Tower.docx“ (ID 4576).

Raskite, kuris procesas užrakino failą

Ir dialogo langas „Failas naudojamas“ man sako tą patį.

Raskite, kuris procesas užrakino failą

Atjunkite nuotoliniu būdu atidarytus failus iš bendrinamo aplanko.

Norėdami atjungti failus, atidarytus iš bendrinamo aplanko, kad galėtumėte ištrinti, pervardyti failą arba pakeisti turinį, naudokite /disconnect parametrą, kad nutrauktumėte ryšius su tuo failu. Čia yra komandinės eilutės parinktys.

OPENFILES /Atjungti [/S sistemą [/U vartotojo vardas [/P [slaptažodis]]]] {[/ID id] [/A accessedby] [/O openmode]} [/OP openfile] Aprašymas: leidžia administratoriui atjungti failus ir aplankus, kurie buvo atidaryti nuotoliniu būdu naudojant bendrinamą aplanką. Parametrų sąrašas: /S sistema Nurodo nuotolinę sistemą, prie kurios reikia prisijungti. /U [domenas\]vartotojas Nurodo vartotojo kontekstą, kuriame komanda turi būti vykdoma. /P [slaptažodis] Nurodo slaptažodį duotam vartotojo kontekstui. /ID ID Nurodo atjungti atidarytus failus pagal failo ID. Galima naudoti pakaitos simbolį „*“. /A accessedby Nurodo atjungti visus atidarytus failus pagal reikšmę "accessedby". Galima naudoti pakaitos simbolį „*“. /O openmode Nurodo atjungti visus atidarytus failus pagal "openmode" reikšmę. Galiojančios reikšmės yra skaitymas, rašymas arba skaitymas / rašymas. Galima naudoti pakaitos simbolį „*“. /OP openfile Nurodo atjungti visus atidarytus failų ryšius, sukurtus konkrečiu "atviro failo" pavadinimu. Galima naudoti pakaitos simbolį „*“. /? Rodo šį pagalbos pranešimą. Pavyzdžiai: OPENFILES /Atjungti /? OPENFILES /Atjungti /ID 1 OPENFILES /Atjungti /A vartotojo vardą OPENFILES /Atjungti /O Skaityti / Rašyti OPENFILES /Atjungti /OP "c:\My Documents\somedoc.doc" /ID 234 OPENFILES /Atjungti /S sistemą /U vartotojo vardas /ID 5 OPENFILES /Atjungti /S sistemą /U vartotojo vardas /P slaptažodis /ID*

Openfiles.exe puikiai atlieka visų atidarytų failų sąrašą kartu su procesų pavadinimais, tačiau negali priverstinai nužudyti procesų. Tačiau šis puikus (bet nepastebimas) integruotas konsolės įrankis gali būti naudingas, kai norite greitai rasti proceso pavadinimą, kuris naudoja failą arba atjungti failą, kurį tinklo vartotojas pasiekia per bendrinamą aplanką – nepriklausydamas nuo trečiosios šalies sprendimas.

5. OpenedFilesView

OpenedFilesView iš Nirsoft rodomas visų jūsų sistemoje atidarytų failų sąrašas. Kiekvienam atidarytam failui rodoma papildoma informacija: rankenos reikšmė, skaitymo/rašymo/naikinimo prieiga, failo padėtis, procesas kurie atidarė failą, ir dar daugiau... Pasirinktinai taip pat galite uždaryti vieną ar daugiau atidarytų failų arba uždaryti procesą, kuris atidarė šiuos failus failus.

Raskite, kuris procesas užrakino failą

Galite uždaryti pasirinktų failų procesus arba uždaryti pasirinktų failų rankenas. Rankenėlės numeris pateikiamas šešioliktaine verte, o konsolės įrankis openfiles.exe rodo jį įprastu formatu. Šis įrankis taip pat leidžia pridėti kontekstinio meniu parinktį, kad per dešiniuoju pelės mygtuku spustelėjus meniu greitai rastumėte procesą, kuriame šiuo metu naudojamas failas. Kontekstinio meniu parinktis / komandinės eilutės palaikymas, manau, yra viena iš naudingiausių OpenedFilesView funkcijų.


Vienas mažas prašymas: jei jums patiko šis įrašas, pasidalinkite juo?

Viena „mažytė“ jūsų dalis labai padėtų šio tinklaraščio augimui. Keletas puikių pasiūlymų:
  • Prisek tai!
  • Pasidalykite juo savo mėgstamame tinklaraštyje + Facebook, Reddit
  • Paskelbkite „Twitter“!
Taigi labai ačiū už palaikymą, mano skaitytojau. Tai užtruks ne daugiau kaip 10 sekundžių jūsų laiko. Bendrinimo mygtukai yra tiesiai žemiau. :)

Ezoikaspranešti apie šį skelbimą