Bonjour,
J'aimerai que lorsque je clique sur un bouton, cela ouvre l'invite de commande pour faire un ping vers www.google.com
Ps : je suis en WPF
Bonjour,
J'aimerai que lorsque je clique sur un bouton, cela ouvre l'invite de commande pour faire un ping vers www.google.com
Ps : je suis en WPF
il faut que tu utilises la classe process:
http://msdn.microsoft.com/fr-fr/libr...8VS.80%29.aspx
J'avais fais ça :
Mais le problème c'est que je ne sais pas où rajouter www.google.com
Code : Sélectionner tout - Visualiser dans une fenêtre à part System.Diagnostics.Process.Start("C:/WINDOWS/system32/ping.exe", vbNormalNoFocus)
Code : Sélectionner tout - Visualiser dans une fenêtre à part Process myProcess = new Process();
Ensuite, tu regardes dans la propriété StartInfo de ton objet myProcess
Thomas LEBRUN: MCAD.NET, MCTS (Win et Web), MCPD(Win et Web) & Microsoft MVP Client Application Development
WPF par la pratique, mon livre sur WPF ! (également disponible ici ou là)
A la découverte de .NET
Ça devrait être ça
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Process ping = new Process(); ping.StartInfo.FileName ="ping.exe"; ping.StartInfo.Arguments = "www.google.com"; ping.StartInfo.CreateNoWindow=false; ping.Start(); ping.WaitForExit();
En mettant juste le code, tu veux dire que ça marche ?
Pour infos t'as pas besoin de mettre un espace au début de l'argument que tu passes à ton processus.
je sais juste une erreur de copier coller
je corrige ça
Merci
J'ai fais ce que tu as donné youtpout mais dès que le ping est fini cela ferme l'invite, je n'ai même pas le temps de voir le résultalt.
Je pensais que la ligne ping.WaitForExit permettait que cela ne la ferme pas.
C'est normal que l'invite se ferme juste après ne te laissant pas le temps de visualiser la sortie.
Pour récupérer la sortie, tu dois gérer les évènements OutputDataReceived et (pas obligatoire mais utile) ErrorDataReceived
Tu pourras par exemple l'affichage dans un fichier de ton application ou tout simplement l'afficher dans un label.
si ton but est de savoir si t'es connecté à internet il y a les api windows qui permettent de faire la même chose (il te renvoie un boolean permettant de savoir si la connexion au site a réussi ou non)
Hahaha on va bien rigoler ! Pas besoin de passer par la classe Process. Il suffit juste d'utiliser la classe Ping existe dans le framework .Net déjà
Et du coup t'as les infos que tu veux à travers les propriétés de cette classe.
D'accord h2s84 mais je ne vois pas trop comment faire (j'ai jamais géré les flux de sorties).
j'ai :
Dans ma MsgBox je ne sais pas quoi mettre pour que cela récupère le résultat.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Dim ping As System.Diagnostics.Process = New System.Diagnostics.Process() ping.StartInfo.FileName = "ping.exe" ping.StartInfo.Arguments = "www.google.com" ping.StartInfo.CreateNoWindow = False ping.Start() ping.WaitForExit() MsgBox(ping.
En effet youtput978 c'est pour savoir si je suis connecté à internet. Tu parles d'une classe WMI qui permet cela ?
il fallait connaître merci pour l'info
si jamais j'en ai l'utilité au moins il sera utilisé la classe process
Il y a une méthode plus facile pour faire le ping en .Net. Check mon post précédent. On a du écrire en parallèle nos deux réponses.
Voila un exemple parfait pour toi
http://www.pinvoke.net/default.aspx/...onnection.html
il semble que la classe ping n'existe pas pour VB
Il y a vraiment tout dans ce framework ^^
Mais j'aimerai vraiment récupéré les données comme dans le ping sur l'invite, c'est à dire le nombre de paquets reçus, perdu...
Et je trouve pas dans la classe Ping si c'est possible.
Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...
Une réponse vous a aidé ? utiliser le bouton
"L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel
En utilisant process, pas moyen que l'invite ne se ferme pas ?
Je veux juste les résultats comme ils sont lors d'un ping normal
Dans le post où je parle des évènements pour récupérer la sortie de la console, tu cliques sur les liens fournis et sur MSDN il y a des exemples tout fournis tu copies et tu colles. Si ton copier-coller marche alors là tu pourras customiser à ta sauce
Justement le copier coller ne marche pas, cela ne m'affiche rien quand j'execute...
Ne comprenant pas tout le code c'est difficile de trouver pourquoi ^^
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager