Eu estava recebendo a mensagem de erro abaixo no IIS do meu computador, quando eu entrava no IIS todos os sites estavam parados e ao tentar iniciar o site era retornado o seguinte erro:
—————————
Gerenciador do Serviços de Informações da Internet (IIS)
—————————
O arquivo já está sendo usado por outro processo. (Exceção de HRESULT: 0x80070020)
—————————
No windows em inglês a mensagem é a seguinte:
—————————
Internet Information Services (IIS) Manager
—————————
The process cannot access the file because it is being used by another process.
(Exception from HRESULT: 0x80070020)
—————————
Esse problema ocorre quando algum outro serviço está utilizando a porta do IIS, pode por exemplo ser o Apache.
Muitas vezes que esbarrei nesse problema, quem estava utilizando a porta https do IIS (porta 443) era o Skype, então primeiramente tente fechar o Skype, iniciar os sites novamente no IIS e testar talvez funcione.
Para localizar qual serviço está utilizando a porta do IIS, faça o seguinte:
Abra o prompt de comando e digite:
$ netstat -aon | find ":80"
Na lista retornada, você precisa localizar se tem algum serviço na porta 80, vai ser uma linha como: TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 1072
Procure por: “TCP 0.0.0.0:80”
Se você não localizar nenhum serviço na porta 80, procure na porta do HTTPs (443), utilize o seguinte comando no Prompt:
$ netstat -aon | find ":443"
e procure uma linha como: TCP 0.0.0.0:443 0.0.0.0:0 LISTENING 1072
O serviço listado nessa linha é o que está impedindo que o IIS inicie, a última coluna indica o ID do processo. Nesse exemplo, o ID é 1072:
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 1072
Agora, abra o Task Manager (botão direito na bandeja de aplicativos do windows e menu: “Task Manager” ou “Gerenciador de Tarefas”) e localize o processo com esse ID.
Agora, você precisa fechar o serviço que está utilizando a porta no meu caso, o problema era o Skype, então bastou fechar o Skype e eu consegui inciar os sites no IIS.
Referência (em inglês): http://support.microsoft.com/kb/973094