IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

afficher et tuer des process sur machine distante


Sujet :

Windows Forms

  1. #1
    Candidat au Club
    Homme Profil pro
    Analyse système
    Inscrit en
    Avril 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Analyse système
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2014
    Messages : 4
    Points : 4
    Points
    4
    Par défaut afficher et tuer des process sur machine distante
    Bonjour,

    je dois manager plusieurs machine distante sur le même lan que ma propre machine.
    je cherche donc à faire appli qui me permette de liste les process de la machine distante et de pouvoir killer le process voulut.
    voici mon code mais il ne fonctionne pas

    code du bouton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Private Sub Button44_Click(sender As Object, e As EventArgs) Handles Button44.Click
            Try
                Process.GetProcessById(ListBox9.Text).Kill()
            Catch ex As Exception
     
            End Try
        End Sub
    Code pour liste les process
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    For Each Proc As Process In Process.GetProcesses("machine_distante")
                ListBox8.Items.Add(Proc.ProcessName)
                ListBox9.Items.Add(Proc.Id)
            Next
    code des listebox
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Private Sub ListBox8_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ListBox8.SelectedIndexChanged
            ListBox9.SelectedIndex = ListBox8.SelectedIndex
        End Sub

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour Robert,

    Il me semble qu'avec un listbox ce n'est pas parce que tu vois du texte dans ta listbox que la propriété "Text" est forcément renseignée.

    Pour en avoir le cœur net, en mode debug met un point d'arrêt sur cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Process.GetProcessById(ListBox9.Text).Kill()
    et regarde la valeur de "ListBox9.Text".

    - Si "ListBox9.Text" est bien vide alors atteint la valeur en mettant à la place "ListBox9.Items(ListBox9.SelectedIndex)".
    - Si "ListBox9.Text" n'était pas vide, alors prend le contenu de "Process.GetProcessById(ListBox9.Text)" dans une variable de type "Process" et regarde son contenu...

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Il faut que tu passes le nom de la machine à Process.GetProcessById :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Process.GetProcessById(ListBox9.Text, "machine_distante").Kill()

  4. #4
    Candidat au Club
    Homme Profil pro
    Analyse système
    Inscrit en
    Avril 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Analyse système
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2014
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    Citation Envoyé par tomlev Voir le message
    Il faut que tu passes le nom de la machine à Process.GetProcessById :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Process.GetProcessById(ListBox9.Text, "machine_distante").Kill()

    Bonjour,

    En fait j'ai le message d'erreur comme quoi il n'arrive pas à joindre la machine_distante, je pense que mon code est à la base juste mais pas pour récupérer les process distant.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    For Each Proc As Process In Process.GetProcesses("machine_distante")
                ListBox8.Items.Add(Proc.ProcessName)
                ListBox9.Items.Add(Proc.Id)

  5. #5
    Candidat au Club
    Homme Profil pro
    Analyse système
    Inscrit en
    Avril 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Analyse système
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2014
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    Citation Envoyé par niakou Voir le message
    Bonjour,

    je dois manager plusieurs machine distante sur le même lan que ma propre machine.
    je cherche donc à faire appli qui me permette de liste les process de la machine distante et de pouvoir killer le process voulut.
    voici mon code mais il ne fonctionne pas

    code du bouton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Private Sub Button44_Click(sender As Object, e As EventArgs) Handles Button44.Click
            Try
                Process.GetProcessById(ListBox9.Text).Kill()
            Catch ex As Exception
     
            End Try
        End Sub
    Code pour liste les process
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    For Each Proc As Process In Process.GetProcesses("machine_distante")
                ListBox8.Items.Add(Proc.ProcessName)
                ListBox9.Items.Add(Proc.Id)
            Next
    code des listebox
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Private Sub ListBox8_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ListBox8.SelectedIndexChanged
            ListBox9.SelectedIndex = ListBox8.SelectedIndex
        End Sub
    Par conter il arrive bien à liste mes process local si je lui précise pas de machine.

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Ah bah j'avais supposé, d'après le code que tu avais posté, que lister les processes de la machine distante fonctionnait pour toi... Si ce n'est pas le cas, c'est un problème de permissions. Il faut que l'utilisateur courant ait les droits pour se connecter à l'autre machine et lister ses process, ce qui n'est généralement pas le cas à moins d'être admin du domaine ou quelque chose comme ça.

  7. #7
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2011
    Messages
    79
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 79
    Points : 118
    Points
    118
    Par défaut
    Bonjour,

    En addition aux autres commentaires : il est bon de séparer les données qui sont visualisées (dans la listbox) des données
    utiles aux opérations (kill des process). Je préconise de récupérer la liste des process dans une List<objet_process> et à l'issue
    de remplir la ListBox.

    Phil

Discussions similaires

  1. Réponses: 0
    Dernier message: 15/03/2011, 17h25
  2. Réponses: 12
    Dernier message: 07/05/2008, 12h53
  3. [Réseau] Exécution d'un programme sur machine distante Linux
    Par kitsune dans le forum Général Java
    Réponses: 8
    Dernier message: 16/05/2006, 14h13
  4. [Système] Liste de répertoire sur machine distante
    Par chaours dans le forum Langage
    Réponses: 7
    Dernier message: 21/03/2006, 18h15
  5. Réponses: 13
    Dernier message: 09/02/2006, 16h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo