NUSTATYTI: Procesas negali pasiekti failo, nes jį naudoja kitas procesas

NUSTATYTI: Procesas negali pasiekti failo, nes jį naudoja kitas procesas

Fix Process Cannot Access File Because It Is Being Used Another Process

Keli „Windows“ vartotojai susiduria su „ Procesas negali pasiekti failo, nes jį naudoja kitas procesas “ klaida. Dažniausiai problema kyla, kai vartotojas bando paleisti komandą netsh. Kai kurie vartotojai praneša, kad jiems klaidos pranešimas pasirodo bandant dešiniuoju pelės mygtuku spustelėti svetainę IIS (interneto informacijos paslaugų) MMC („Microsoft Management Console“) papildinyje.



Procesas negali pasiekti failo, nes jį naudoja kitas procesas



Pranešama, kad problema kyla „Windows Vista“, „Windows 7“, „Windows 8.1“, „Windows 10“ ir įvairiose „Windows Server“ versijose.

Kas lemia, kad procesą naudoja kitas procesas?

Mes ištyrėme šią problemą, peržiūrėdami įvairias vartotojų ataskaitas ir taisymo strategijas, kurias jie naudojo, kad problema būtų išspręsta. Remiantis tuo, ką mums pavyko surinkti, yra keli įprasti scenarijai, kurie suaktyvins šį klaidos pranešimą:



  • Komandai reikalingos administratoriaus teisės - Jei susiduriate su klaida terminalo viduje, tai greičiausiai dėl to, kad neturite administratoriaus teisių atlikti pakeitimų. Keli panašios situacijos vartotojai sugebėjo išspręsti problemą suteikdami administratoriaus privilegijas.
  • Kitas procesas yra 80 arba 443 prievado naudojimas - Tai būdinga kompiuteriams, kuriuose veikia IIS (interneto informacijos paslaugos). Jei kitas procesas naudoja šiuos du prievadus, pamatysite šį klaidos pranešimą.
  • Dalinis registro raktas „ListenOnlyList“ nėra tinkamai sukonfigūruotas - Kitas įprastas IIS (interneto informacijos paslaugų) scenarijus, kuris sukels šią klaidą, yra neteisingai sukonfigūruotas registro raktas „ListenOnlyList“.

Jei šiuo metu stengiatės išspręsti šį klaidos pranešimą, šiame straipsnyje pateikiama patvirtintų trikčių šalinimo veiksmų rinkinys. Žemiau rasite metodų rinkinį, kurį kiti panašios situacijos vartotojai naudojo problemai išspręsti.

Norėdami gauti geriausius rezultatus, vadovaukitės toliau pateiktais metodais, kol susidursite su taisymu, kuris veiksmingai pašalina jūsų konkretaus scenarijaus klaidą.

Pradėkime!



1 metodas: paleiskite komandą su administratoriaus teisėmis

Jei bandydami paleisti „netsh“ komandą gaunate šią klaidą, tikėtina, kad klaida įvyksta, nes neturite administratoriaus teisių. Pranešama, kad taip nutinka dažniau nei tada, kai vartotojas bando paleisti komandą, kuri prideda išskyrimus prie vietinių „Windows“ programų ar trečiųjų šalių programų dinaminio prievado diapazono.

Atminkite, kad norint atlikti tokią operaciją, reikės administratoriaus teisių. Norėdami įsitikinti, kad CMD lange, kuriame bandote atlikti veiksmą, yra administratoriaus teisės, atlikite šiuos veiksmus:

  1. Paspauskite „Windows“ klavišas + R atidaryti Vykdyti dialogo langą. Tada įveskite „ cmd “Ir paspauskite „Ctrl“ + „Shift“ + „Enter“ atidaryti aukštesnę komandinę eilutę.

    Atidaromas padidintas komandos eilutės langas

  2. Kai paragino UAC (vartotojo abonemento kontrolė) , spustelėkite Taip suteikti administratoriaus privilegijas.
  3. Padidintoje komandinėje eilutėje paleiskite komandą dar kartą ir patikrinkite, ar vis dar matote tą patį klaidos pranešimą.

Jei vis dar gaunate Procesas negali pasiekti failo, nes jį naudoja kitas procesas “ klaida arba šis scenarijus nebuvo taikomas, pereikite prie kito toliau pateikto metodo.

2 metodas: skirtingo IP diapazono nustatymas

Jei bandote išspręsti konfliktą DNS konfliktą naudodami „netsh“, o anksčiau pateiktas metodas jums nepadėjo, galbūt norėsite išbandyti kitą metodą.

Keli vartotojai, kurie stengiasi išspręsti tą patį klaidos pranešimą, nustatė, kad konfliktas išsprendžiamas po to, kai jie bandė nustatyti visiškai kitokį IP diapazoną, užuot sukūrę išskyrimo diapazoną.

Žemiau yra kelios komandos, kurias vienas paveiktas vartotojas sėkmingai vykdė, kad išspręstų konfliktą tarp DNS ir „Quickbooks“:

netsh int ipv4 set dynamicport tcp start = 10000 num = 1000 netsh int ipv4 set dynamicport udp start = 10000 num = 1000

Pastaba: Įsitikinkite, kad terminalas, kuriame vykdote komandą, turi administratoriaus teises.

Jei šis metodas neišsprendė konflikto arba nebuvo pritaikytas situacijai, su kuria susidūrėte, pereikite prie galutinio metodo.

3 metodas: IIS prievado konflikto sprendimas

Jei kyla problema bandant dešiniuoju pelės mygtuku spustelėkite svetainės elementą IIS MMC papildinyje (spustelėjus Pradėti nieko nedaroma), turėsite naudoti „Netstat.exe“ įrankį, kad išsiaiškintumėte, ar yra kitas procesas. naudojant 80 ir 443 prievadus.

Ši problema yra gana dažna kompiuteriuose, kuriuose veikia „Microsoft IIS 6.0“ ir „7.0“. Remiantis oficialia „Microsoft“ dokumentacija, klaidos pranešimas pasirodys, jei dabartinei situacijai taikoma viena iš šių sąlygų:

  • The „ListenOnlyList“ registro raktas netinkamai sukonfigūruotas IIS veikiančiame kompiuteryje.
  • Kitas procesas yra naudojant TCP prievadą (80) arba SSL prievadą (443), reikalingą IIS.

Norėdami išspręsti šią problemą, turėsime įdiegti „Netstat.exe“ įrankį, kad būtų galima nustatyti, ar kitas procesas naudoja aukščiau nurodytus prievadus. Jei naudingoji programa nustato, kad prievadai nenaudojami, ištirsime dalinį raktą „ListenOnlyList“, kad nustatytume, ar jis tinkamai sukonfigūruotas.

Čia pateikiamas nuoseklus viso proceso vadovas:

  1. Paspauskite „Windows“ klavišas + R atidaryti Vykdyti dialogo langą. Tada įveskite „ cmd “Ir paspauskite „Ctrl“ + „Shift“ + „Enter“ atidaryti aukštesnę komandinę eilutę. Kai paragino UAC (vartotojo abonemento kontrolė) , spustelėkite Taip suteikti administracines privilegijas.

    Atidaromas padidintas komandos eilutės langas

  2. Paleistoje komandų eilutėje paleiskite šią komandą, kad pradėtumėte „Netstat.exe“ naudingumas:
    netstat -ano
  3. Gavę grąžą, slinkite per sąrašą Aktyvūs ryšiai ir patikrinkite, ar 50 ir 443 prievadus aktyviai naudoja kitas procesas.

    Patikrinkite, ar uostus naudoja kitas procesas

    Pastaba: Jei uostus aktyviai naudoja kitas procesas, jums ką tik pavyko nustatyti problemos šaltinį. Tokiu atveju internete ieškokite konkrečių veiksmų, kaip išspręsti uosto konfliktą pagal uosto PID.

  4. Uždarykite aukštesnę komandinę eilutę, nes mums nereikės administratoriaus teisių atliekant kitus veiksmus.
  5. Jei uostai nėra aktyviai naudojami, paspauskite „Windows“ klavišas + R atidaryti Vykdyti dialogo langą. Tada įveskite „ regedit ‘Ir paspauskite Įveskite atidaryti Registro redaktorius . Kai paragino UAC (vartotojo abonemento kontrolė) , spustelėkite Taip suteikti administracines privilegijas.

    „Registry Editor“ įrankio atidarymas

  6. Registro rengyklėje naudokite kairįjį sritį, kad pereitumėte į šią vietą:
    HKEY_LOCAL_MACHINE  SYSTEM  CurrentControlSet  Services  HTTP  Parameters  ListenOnlyList 

    Pastaba: Jei „ListenOnlyList“ dalinio rakto nėra, nereikia jo sukurti kaip IP adreso 0.0.0.0 bus naudojama pagal numatytuosius nustatymus.

  7. Prieš eidami į priekį ir modifikuodami „ListenOnlyList“ dalinį raktą, turėsite sustabdyti HTTP paslaugą, kurioje veikia IIS. Taigi įdėkite registro rengyklę į antrą planą, nes po kurio laiko grįšime prie jo.
  8. Tada paspauskite „Windows“ klavišas + R norėdami atidaryti dialogo langą Vykdyti, įveskite cmd ‘Ir paspauskite Įveskite norėdami atidaryti kitą komandų eilutės langą.

    Vykdyti dialogą: cmd

  9. „Cmd“ eilutėje vykdykite šią komandą ir paspauskite Įveskite sustabdyti HTTP paslaugą, atsakingą už IIS vykdymą:
    neto sustojimas http
  10. Paklausus, ar norite tęsti šią operaciją, įveskite „Y“ ir paspauskite Enter, kad patvirtintumėte operaciją.

    HTTP paslaugos išjungimas

  11. Kai HTTP paslauga bus išjungta, uždarykite komandų eilutės langą ir grįžkite į registro rengyklę.
  12. Su „ListenOnlyList“ pasirinktas dalinis raktas, pereikite prie dešiniojo lango ir įsitikinkite, kad jame yra galiojantys IP adresai. Jei pastebite neteisingą IP adresą, pašalinkite jį arba pakeiskite, kad jis atspindėtų įrašą su galiojančiu IP adresu.

    Ištrinamos dvejetainės vertės su neteisingais IP

    Pastaba: Jei „ListenOnlyList“ yra dalinis raktas ir 0.0.0.0 nurodytas adresas, turite ištrinti visus kitus IP adresus.

  13. Uždarykite registro rengyklę ir iš naujo paleiskite kompiuterį.
  14. Kito paleidimo metu HTTP paslauga turėtų būti paleista automatiškai. Bet norėdami įsitikinti, paspauskite „Windows“ klavišas + R norėdami atidaryti kitą Vykdyti dialogo langą. Tada įveskite „ cmd “Ir paspauskite Įveskite norėdami atidaryti komandų eilutės langą.

    Įprasto komandinės eilutės lango atidarymas

  15. Naujai atidarytoje komandų eilutėje įveskite šią komandą, kad įsitikintumėte, jog paleidžiama HTTP paslauga:
     grynoji pradžia http 

    Pastaba: Jei jums grąžinamas pranešimas, kuriame sakoma, kad „prašoma paslauga jau paleista“, galite eiti.

  16. Bandykite paleisti paslaugą naudodami „Microsoft Internet Information Services“ (IIS) „Microsoft Management Console“ (MMC) papildinį. Nebereikėtų susidurti su „Procesas negali pasiekti failo, nes jį naudoja kitas procesas“ klaida.
5 minutes perskaityta