Estou desenvolvendo um aplicativo que escuta na porta 3000. Aparentemente, há uma instância dele ainda escutando a porta, porque sempre que inicio, ela não pode criar um ouvinte (C #, TcpListener, mas isso é irrelevante) porque a porta já está ocupado.
Agora, o aplicativo não existe no Gerenciador de tarefas, então tentei encontrar seu PID e matá-lo, o que levou a este resultado interessante:
C:\Users\username>netstat -o -n -a | findstr 0.0:3000
TCP 0.0.0.0:3000 0.0.0.0:0 LISTENING 3116
C:\Users\username>taskkill /F /PID 3116
ERROR: The process "3116" not found.
Eu nunca vi esse comportamento antes e achei que era interessante o suficiente para ver se alguém tem uma solução.
UPDATE: Iniciei o Process Explorer e fiz uma pesquisa por 3000 e encontrei o seguinte:
<Non-existent Process>(3000): 5552
Cliquei com o botão direito do mouse e escolhi "Fechar identificador". Ele não está mais no Process Explorer, mas ainda aparece no netstat e ainda impede o aplicativo de iniciar o ouvinte.
ATUALIZAÇÃO 2: Encontrado o TCPView para Windows que mostra o processo como "<non-existent>"
. Como no CurrPorts, nada acontece quando tento fechar a conexão nesta ferramenta.