Tester si un processus est en cours d'exécution

Résolu
AnnihilatorSupernova Messages postés 19 Date d'inscription mercredi 8 novembre 2000 Statut Membre Dernière intervention 14 septembre 2005 - 30 août 2005 à 18:55
anthony147 Messages postés 1 Date d'inscription lundi 9 mars 2009 Statut Membre Dernière intervention 16 novembre 2009 - 16 nov. 2009 à 12:52
Bonjour !
J'aimerais savoir comment faire pour tester si un processus est en cours d'exécution. Je sais qu'on peut les lister et chercher le processus dans la liste par exemple, mais je cherche juste comment tester.

Merci d'avance.

10 réponses

Tilois Messages postés 721 Date d'inscription dimanche 10 juin 2001 Statut Membre Dernière intervention 27 mars 2011 7
30 août 2005 à 20:25
Le probleme de ta fonction GetProcessesByName c'est qu'elle renvoie une liste de process



Process[] liste = Process.GetProcessesByName("notepad");

foreach (Process p in liste)

{

p.kill();

}
Ca va tuer tout les processus que tu vas recupéré
1
Lutinore Messages postés 3246 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 27 octobre 2012 42
30 août 2005 à 19:20
Salut, je ne sais pas si c'est ca que tu cherches:



if (
Process.GetProcessesByName(
"notepad" ).Length > 0 )
{

// Ou Process.GetProcessById

// Au moins un notepad est ouvert !
}
0
Tilois Messages postés 721 Date d'inscription dimanche 10 juin 2001 Statut Membre Dernière intervention 27 mars 2011 7
30 août 2005 à 19:33
Si tu as un processus (l'objet process s'y ratachant) tu peux utiliser
la propriété hasexited. Tout dépend donc a savoir si tu veux savoir si
un processus que tu 'monitores' a été fermé ou si tu veux savoir si un
processus est en cours d'éxécution.
0
AnnihilatorSupernova Messages postés 19 Date d'inscription mercredi 8 novembre 2000 Statut Membre Dernière intervention 14 septembre 2005
30 août 2005 à 20:21
En fait je veux tester si un processus est en cours d'exécution, et si oui, je veux le tuer.
J'ai essayé :

if (Process.GetProcessesByName("notepad").Length > 0)
{
Process p = new Process();
p.ProcessName = "notepad";
p.Kill();
}

Mais j'ai une erreur normale, on ne peut pas assigner la valeur ProcessName.
Comment faire ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_piep14 Messages postés 345 Date d'inscription lundi 15 mars 2004 Statut Membre Dernière intervention 13 mai 2011
31 août 2005 à 18:45
Pas moi pour continuer cette discussion intéressante, je souhaite
également killer un processus de notepad, par contre je ne souhaite pas
killer tous les processus notepad ouvert.



J'ai une fonction qui ouvre un notepad et je souhaite le killer une fois le traitement terminée !!!
0
Tilois Messages postés 721 Date d'inscription dimanche 10 juin 2001 Statut Membre Dernière intervention 27 mars 2011 7
31 août 2005 à 20:14
Donc tu as une instance d'un objet process?
0
cs_Francki Messages postés 23 Date d'inscription mercredi 19 décembre 2001 Statut Membre Dernière intervention 21 août 2008
2 sept. 2005 à 21:02
Salut, j'aimerais savoir dans quel espace de nom vous prenez
Process, car je ne le vois pas du tout et j'essaie d'ouvrir un .exe via
mon application.



Merci à l'avance
0
cs_coq Messages postés 6351 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 100
2 sept. 2005 à 21:51
System.Diagnostics

Doc classe Process

Cocoricoooooooo !!!!
coq
MVP Visual C#
0
cs_Francki Messages postés 23 Date d'inscription mercredi 19 décembre 2001 Statut Membre Dernière intervention 21 août 2008
2 sept. 2005 à 22:05
Je te remercie !
0
anthony147 Messages postés 1 Date d'inscription lundi 9 mars 2009 Statut Membre Dernière intervention 16 novembre 2009
16 nov. 2009 à 12:52
Mafinaritra be le code
0