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

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

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 prievadų naudojimas - tai būdinga kompiuteriams, kuriuose veikia IIS (interneto informacijos paslaugos). Jei kitas procesas naudoja šiuos du prievadus, pamatysite šį klaidos pranešimą.
  • „RegisterOnlyList“ registro raktas sukonfigūruotas neteisingai . Kitas įprastas IIS (interneto informacijos paslaugų) scenarijus, kuris suaktyvins š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, kai vartotojas bando paleisti komandą, kuri prideda išimčių 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šą + R, kad atidarytumėte dialogo langą Vykdyti. Tada įveskite „ cmd “ ir paspauskite Ctrl + Shift + Enter, kad atidarytumėte padidintą komandų eilutę.
  2. Kai paprašys UAC (vartotojo abonemento kontrolė) , spustelėkite Taip, kad suteiktumėte administratoriaus teises.
  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 klaidą „ Procesas negali pasiekti failo, nes jį naudoja kitas procesas“ arba šis scenarijus nebuvo taikomas, pereikite prie kito toliau pateikto metodo.

2 metodas: nustatykite kitą IP diapazoną

Jei bandote išspręsti konfliktą DNS konfliktą naudodami „netsh“ ir 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 keletas komandų, 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 susidariusiai situacijai, pereikite prie paskutinio 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ų:

  • IIS veikiančiame kompiuteryje neteisingai sukonfigūruotas registro raktas „ ListenOnlyList“ .
  • 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 nustatytume, ar kitame procese naudojami aukščiau nurodyti prievadai. Jei įrankis nustato, kad prievadai nenaudojami, ištirsime dalinį raktą „ListenOnlyList“, kad įsitikintume, ar jis tinkamai sukonfigūruotas.

Štai žingsnis po žingsnio vadovas:

  1. Paspauskite „ Windows“ klavišą + R, kad atidarytumėte dialogo langą Vykdyti. Tada įveskite „ cmd “ ir paspauskite Ctrl + Shift + Enter, kad atidarytumėte padidintą komandų eilutę. Kai paprašys UAC (vartotojo abonemento kontrolė) , spustelėkite Taip, kad suteiktumėte administravimo teises.
  2. Paleistoje komandų eilutėje paleiskite šią komandą, kad paleistumėte „ Netstat.exe“ įrankį:
    netstat -ano
  3. Gavę grąžą, slinkite per aktyvių ryšių sąrašą ir patikrinkite, ar 50 ir 443 prievadus aktyviai 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šą + R, kad atidarytumėte Vykdyti dialogo langą. Tada įveskite „ regedit “ ir paspauskite Enter, kad atidarytumėte registro rengyklę . Kai paprašys UAC (vartotojo abonemento valdymas) , spustelėkite Taip, kad suteiktumėte administravimo teises.
  6. Registro rengyklėje naudokite kairįjį sritį, kad pereitumėte į šią vietą:
    HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ HTTP \ Parameters \ ListenOnlyList

    Pastaba: Jei dalinio rakto „ ListenOnlyList “ nėra, jo nereikia kurti, nes pagal numatytuosius nustatymus bus naudojamas 0.0.0.0 IP adresas .

  7. Prieš pradėdami modifikuoti dalinį raktą „ ListenOnlyList“ , 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šą + R, kad atidarytumėte dialogo langą Vykdyti, įveskite „ cmd “ ir paspauskite Enter, kad atidarytumėte kitą komandų eilutės langą.
  9. „Cmd“ eilutėje vykdykite šią komandą ir paspauskite Enter, kad sustabdytumėte HTTP tarnybą, atsakingą už IIS vykdymą:
    neto sustojimas http
  10. Paklausus, ar norite tęsti šią operaciją, įveskite „Y“ ir paspauskite Enter, kad patvirtintumėte operaciją.
  11. Kai HTTP paslauga bus išjungta, uždarykite komandų eilutės langą ir grįžkite į registro rengyklę.
  12. Pasirinkę dalinį raktą „ ListenOnlyList“ , pereikite prie dešiniojo lango ir įsitikinkite, kad jame yra galiojantys IP adresai. Jei pastebite netinkamą IP adresą, pašalinkite jį arba pakeiskite, kad jis atspindėtų įrašą su galiojančiu IP adresu.

    Pastaba: Jei yra dalinis raktas „ ListenOnlyList“ ir nurodomas 0.0.0.0 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 automatiškai paleista. Bet norėdami įsitikinti, paspauskite „ Windows“ klavišą + R, kad atidarytumėte kitą „Run“ dialogo langą. Tada įveskite „ cmd “ ir paspauskite Enter, kad atidarytumėte komandų eilutės langą.
  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į. Nebeturėtumėte susidurti su klaida „procesas negali pasiekti failo, nes jį naudoja kitas procesas“ .