Fix: Prosessen har ikke tilgang til filen fordi den brukes av en annen prosess

Flere Windows-brukere møter feilen " Prosessen har ikke tilgang til filen fordi den brukes av en annen prosess" . Det meste av tiden oppstår problemet når brukeren prøver å kjøre en netsh-kommando. Noen brukere rapporterer at feilmeldingen for dem vises når de prøver å høyreklikke på et nettsted i IIS (Internet Information Services) MMC (Microsoft Management Console) snap-in.

Prosessen har ikke tilgang til filen fordi den brukes av en annen prosess

Problemet rapporteres å oppstå på Windows Vista, Windows 7, Windows 8.1, Windows 10 og på forskjellige Windows Server-versjoner.

Hva får prosessen til å bli brukt av en annen prosess?

Vi undersøkte dette problemet ved å se på forskjellige brukerrapporter og reparasjonsstrategier som de brukte for å få problemet løst. Basert på hva vi klarte å samle, er det flere vanlige scenarier som vil utløse akkurat denne feilmeldingen:

  • Kommandoen krever administratorrettigheter - Hvis du får feilen i en terminal, er det mest sannsynlig fordi du ikke har administratorrettigheter for å gjøre endringene. Flere brukere i en lignende situasjon har klart å få problemet løst ved å gi administratorrettigheter.
  • En annen prosess er å bruke port 80 eller port 443 - Dette er typisk for datamaskiner som kjører IIS (Internet Information Services). Hvis en annen prosess bruker disse to portene, vil du se denne feilmeldingen.
  • ListenOnlyList-registertilnøkkelen er ikke konfigurert riktig - Et annet vanlig scenario med IIS (Internet Information Services) som vil utløse denne spesielle feilen, er en feilkonfigurert ListenOnlyList registertilnøkkel.

Hvis du for øyeblikket sliter med å løse denne spesielle feilmeldingen, vil denne artikkelen gi deg en samling bekreftede feilsøkingstrinn. Nedenfor nedenfor har du en samling metoder som andre brukere i en lignende situasjon har brukt for å få problemet løst.

For best mulig resultat, følg metodene nedenfor for å komme til en løsning som er effektiv for å løse feilen i det aktuelle scenariet.

La oss begynne!

Metode 1: Kjører kommandoen med administratorrettigheter

Hvis du får denne feilen når du prøver å kjøre en netsh-kommando, er det sannsynlig at feilen oppstår fordi du ikke har administratorrettigheter. Dette rapporteres å skje mer enn ofte når brukeren prøver å kjøre en kommando som legger til unntak for det dynamiske portområdet for opprinnelige Windows-apper eller tredjepartsapplikasjoner.

Husk at en slik operasjon krever administratorrettigheter. Følg trinnene nedenfor for å sikre at CMD-vinduet du prøver å utføre handlingen i har administratorrettigheter.

  1. Trykk på Windows-tasten + R for å åpne en Kjør-dialogboks. Skriv deretter “ cmd ” og trykk Ctrl + Shift + Enter for å åpne en forhøyet ledetekst.

    Åpne et forhøyet ledetekstvindu
  2. Når du blir bedt om av UAC (User Account Control), klikker du Ja for å gi administratorrettigheter.
  3. I den forhøyede ledeteksten, kjør kommandoen igjen og se om du fremdeles møter den samme feilmeldingen.

Hvis du fremdeles får feilen " Prosessen kan ikke få tilgang til filen fordi den brukes av en annen prosess", eller dette scenariet ikke var aktuelt, kan du gå til neste metode nedenfor.

Metode 2: Angi et annet IP-område

Hvis du prøver å løse en konflikt-DNS-konflikt ved å bruke netsh og metoden over ikke hjalp deg, kan det være lurt å prøve en annen tilnærming.

Flere brukere som sliter med å løse den samme feilmeldingen, har funnet ut at konflikten er løst etter at de prøvde å sette et helt annet IP-område i stedet for å opprette et ekskluderingsområde.

Nedenfor har du et par kommandoer som en berørt bruker med hell kjørte for å løse en konflikt mellom DNS og Quickbooks:

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

Merk: Forsikre deg om at terminalen du kjører kommandoen i har administratorrettigheter.

Hvis denne metoden ikke løste konflikten eller ikke var relevant i situasjonen du støter på, flytter du ned til den endelige metoden.

Metode 3: Løsning av IIS-portkonflikten

Hvis du støter på problemet mens du prøver å høyreklikke på et nettstedselement i snapin-modulen IIS MMC (å klikke på Start gjør ikke noe), må du bruke verktøyet Netstat.exe for å finne ut om en annen prosess er bruker port 80 og port 443.

Dette problemet er ganske vanlig med datamaskiner som kjører Microsoft IIS 6.0 og 7.0. Basert på den offisielle Microsoft-dokumentasjonen, vil feilmeldingen vises hvis en av følgende forhold gjelder for din nåværende situasjon:

  • ListenOnlyList- undernøkkelen er ikke riktig konfigurert på IIS-datamaskinen.
  • En annen prosess er å bruke TCP-porten (80) eller SSL-porten (443) som kreves av IIS.

For å løse dette problemet, må vi distribuere verktøyet Netstat.exe for å finne ut om en annen prosess bruker portene som er spesifisert ovenfor. Hvis verktøyet bestemmer at portene ikke blir brukt, undersøker vi undernøkkelen ListenOnlyList for å se om den er riktig konfigurert.

Her er en trinnvis guide gjennom hele saken:

  1. Trykk på Windows-tasten + R for å åpne en Kjør-dialogboks. Skriv deretter “ cmd ” og trykk Ctrl + Shift + Enter for å åpne en forhøyet ledetekst. Når du blir bedt om det av UAC (User Account Control), klikker du Ja for å gi administrative rettigheter.

    Åpne et forhøyet ledetekstvindu
  2. Inne i den hevede ledeteksten, kjør følgende kommando for å starte Netstat.exe- verktøyet:
     netstat -ano 
  3. Når du har kommet tilbake, blar du gjennom listen over aktive tilkoblinger og kontrollerer om portene 50 og 443 brukes aktivt av en annen prosess.

    Kontroller om portene brukes av en annen prosess

    Merk: Hvis portene brukes aktivt av en annen prosess, har du akkurat klart å identifisere kilden til problemet. I dette tilfellet kan du se på nettet etter spesifikke trinn for hvordan du kan løse portkonflikten i henhold til PID-en til porten.

  4. Lukk den forhøyede ledeteksten, da vi ikke trenger administratorrettigheter for de neste trinnene.
  5. Hvis portene ikke brukes aktivt, trykk Windows tast + R for å åpne en Kjør-dialogboks. Skriv deretter ' regedit ' og trykk Enter for å åpne Registerredigering . Når du blir bedt om det av UAC (Kontroll av brukerkontoer), klikker du Ja for å gi administrative rettigheter.

    Åpne verktøyet Registerredigering
  6. Inne i registerredigeringsprogrammet bruker du venstre rute for å navigere til følgende sted:
     HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ HTTP \ Parameters \ ListenOnlyList 

    Merk: Hvis listenOnlyList- undernøkkelen ikke er til stede, er det ikke nødvendig å opprette en som en IP-adresse på 0.0.0.0 vil som standard bli brukt.

  7. Før du går videre og endre undernøkkelen ListenOnlyList, må du stoppe HTTP-tjenesten som kjører IIS. Så sett registerredigereren i bakgrunnen, så kommer vi tilbake til den om et øyeblikk.
  8. Deretter trykker du på Windows-tasten + R for å åpne en Kjør-dialogboks, skriver ' cmd ' og trykker Enter for å åpne et nytt kommandopromptvindu.

    Kjør dialog: cmd
  9. Kjør følgende kommando i Cmd-ledeteksten og trykk Enter for å stoppe HTTP-tjenesten som er ansvarlig for å kjøre IIS:
     nettstopp http 
  10. Når du blir spurt om du vil fortsette denne operasjonen, skriver du 'Y' og trykker Enter for å bekrefte operasjonen.

    Deaktiverer HTTP-tjenesten
  11. Når HTTP-tjenesten er deaktivert, lukker du vinduet Kommandoprompt og går tilbake til registerredigereren.
  12. Når listenOnlyList er valgt, flytter du over til høyre rute og forsikrer deg om at den inneholder gyldige IP-adresser. Hvis du oppdager en IP-adresse som ikke er gyldig, må du fjerne den eller endre den for å gjenspeile en oppføring med en gyldig IP-adresse.

    Slette binærverdiene med ugyldige IP-er

    Merk: I tilfelle undernøkkelen ListenOnlyList er til stede og 0.0.0.0- adressen vises, må du slette alle andre IP-adresser.

  13. Lukk Register Editor og start datamaskinen på nytt.
  14. Ved neste oppstart skal HTTP-tjenesten startes automatisk. Men bare for å sikre deg, trykker du på Windows-tasten + R for å åpne en annen dialogboks for Kjør. Skriv deretter “ cmd ” og trykk Enter for å åpne et Kommandoprompt-vindu.

    Åpne et normalt Command Prompt-vindu
  15. I den nyåpnede ledeteksten skriver du følgende kommando for å sikre at HTTP-tjenesten startes:
     nettstart http 

    Merk: Hvis du får en melding om at "Den forespurte tjenesten er allerede startet", er du god til å gå.

  16. Forsøk å starte en tjeneste fra Microsoft Internet Information Services (IIS) Microsoft Management Console (MMC) snap-in. Du bør ikke lenger støte på "prosessen kan ikke få tilgang til filen fordi den blir brukt av en annen prosess" -feil.

Interessante Artikler