54 votes

Comment tuer un processus qui est mort mais qui écoute ?

Je développe une application qui écoute sur le port 3000. Apparemment, il y a une instance de cette application qui écoute toujours ce port, car à chaque fois que je la lance, elle ne peut pas créer d'écouteur (C#, TcpListener, mais ce n'est pas pertinent) parce que le port est déjà pris.

L'application n'existe pas dans le gestionnaire de tâches, j'ai donc essayé de trouver son PID et de la tuer, ce qui a donné ce résultat intéressant :

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.

Je n'ai jamais vu ce comportement auparavant et j'ai pensé que c'était suffisamment intéressant pour voir si quelqu'un avait une solution.

MISE À JOUR : J'ai lancé l'Explorateur de processus et j'ai fait une recherche pour 3000 et j'ai trouvé ceci :

<Non-existent Process>(3000): 5552

J'ai fait un clic droit dessus et choisi "Fermer la poignée". Il n'est plus dans l'explorateur de processus, mais apparaît toujours dans netstat et empêche toujours l'application de lancer le listener.

UPDATE 2 : Trouvé TCPView pour Windows qui montrent le processus comme "<non-existent>" . Comme avec CurrPorts, rien ne se passe lorsque j'essaie de fermer la connexion dans cet outil.

0voto

eka808 Points 126

J'ai eu le même problème et je l'ai résolu en :

  • trouver le PID avec netstat -o
  • Tuez-le avec le processus xp

Il est intéressant de noter que netstat peut parfois retourner un pid mais pas le nom de l'exécutable correspondant !

0voto

Sathiya Narayanan Points 101

Une utilisation hybride de TCPView et de Process Explorer a fonctionné pour moi ;) J'ai d'abord cherché l'identifiant du processus qui utilisait le port dans TCPView. J'ai isolé le processus dans Process Explorer et je l'ai tué en utilisant Process Explorer.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X