Visual studio 2008

Résolu
Bonjour,
J'aimerais voir ce qui ce marque dans la console dans un TextBox en fessant
Dim RetVal
RetVal = Shell("C:\WINDOWS\system32\cmd.exe /c ping 192.168.67.13 & pause")

J'ai essayer:

'Write(RetVal(TextBox1.Text))
Et des million de truc mais je ne trouve pas. pouvez vous m'aidez ?
Merci. =)
--
Membre

9 réponses

  1. bonjour,
    ta question est un peu vague, si tu detaille un peu plus...
    1. Ba quand on fais ping XXX.XXX.XXX.XXX ya par exemple sa qui s'affiche dans la cmd:

      Je fais ping dans la cmd avec sa:

      Dim RetVal
      RetVal = Shell("C:\WINDOWS\system32\cmd.exe /c ping 192.168.67.13 & pause")

      et sa donne sa:

      Envoi d'une requête 'Ping' 192.168.67.13 avec 32 octets de données :
      Réponse de 192.168.67.13 : octets=32 temps=123 ms TTL=64
      Réponse de 192.168.67.13 : octets=32 temps=3 ms TTL=64
      Réponse de 192.168.67.13 : octets=32 temps=1 ms TTL=64
      Réponse de 192.168.67.13 : octets=32 temps=2 ms TTL=64

      Statistiques Ping pour 192.168.67.13:
      Paquets : envoyés = 4, reçus = 4, perdus = 0 (perte 0%),
      Durée approximative des boucles en millisecondes :
      Minimum = 1ms, Maximum = 123ms, Moyenne = 32ms
      Appuyez sur une touche pour continuer...

      je veux que sa s'affiche dans ma Textbox1 en text voila =D
      1. tu sais, pour faire un ping ou pour avoir de tel infos t'es pas obligé de passer par cmd!!!!!!!!
        1. Tu peux pas m'aidez ? :)
          J'ai vu tes message postez tu t'y connais en programmation du devrais je pense savoir faire sa ? non ?
          1.  public void doCmd() 
                    { 
                        string commandLine = "ping 192.168.67.13"; 
                        ProcessStartInfo PSI = new ProcessStartInfo("cmd.exe"); 
                        PSI.RedirectStandardInput = true; 
                        PSI.RedirectStandardOutput = true; 
                        PSI.RedirectStandardError = true; 
                        PSI.UseShellExecute = false; 
                        Process p = Process.Start(PSI); 
                        System.IO.StreamWriter SW = p.StandardInput; 
                        System.IO.StreamReader SR = p.StandardOutput; 
                        SW.WriteLine(commandLine); 
                        SW.Close(); 
                    }


            Avec ce bout de code ci, tu auras dans SR (le StreamReader), le retour de la console.

            Ok?
            "The most successful method of programming is to begin a program as simply as possible, test it, and then add to the program until it performs the required job." -- PDP8 handbook, Pg 9-64
            1. Nan sa marche pas :/
              Je fais du VB8 en Form
          2. "Nan sa marche pas :/ "
            il t'a donner une piste, un peu d'effort et tu arriveras...
            1. OK je vais essayer encore et encore mais ... J'ai du mal ^^
          3. re,
            ok, je crois tous qu'il te reste à faire c'est traduire en vb8
            ca donne qqc comme ca :

            Imports System.Diagnostics
            Imports System.ComponentModel

            Public Class Form1

            Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

            Dim startinfos As New ProcessStartInfo("cmd.exe")
            startinfos.UseShellExecute = False
            'startinfo.StandardOutputEncoding = Encoding.GetEncoding(850)
            startinfos.RedirectStandardOutput = True
            startinfos.CreateNoWindow = True
            Dim proc As Process = Process.Start(startinfos)
            startinfos.Arguments = "ping 127.0.0.1"
            'attendre la fin de la commande
            proc.WaitForExit()
            ' récupérer la sortie standard
            TextBox1.Text = proc.StandardOutput.ReadToEnd()

            End Sub
            End Class

            pour plus d'infos https://docs.microsoft.com/fr-fr/dotnet/api/system.diagnostics.processstartinfo?redirectedfrom=MSDN&view=netframework-4.8

            bonne chance
            1. Merci beaucoup !
              Sa m'affiche que sa:
              Microsoft Windows [version 6.1.7600]
              Copyright (c) 2009 Microsoft Corporation. Tous droits r'serv's.

              D:\Documents\Visual Studio 2008\Projects\LM50-App-Beta\LM50-App-Beta\bin\Debug>

              Mais c'est un debut donc youpi !! Je vais voir poourquoi la suite ne s'affiche pas..
            2. Merci j'ai réussi:

              TextBox1.Text &= ("Testing ping...") & vbCrLf
              TextBox1.Text &= (New String("-", 40)) & vbCrLf
              System.Threading.Thread.Sleep(TimeSpan.FromSeconds(1))
              Dim startinfos As New ProcessStartInfo("cmd.exe", "/c ping 192.168.67.13")
              startinfos.UseShellExecute = False
              'startinfo.StandardOutputEncoding = Encoding.GetEncoding(850)
              startinfos.RedirectStandardOutput = True
              startinfos.CreateNoWindow = True
              Dim proc As Process = Process.Start(startinfos)
              'attendre la fin de la commande
              proc.WaitForExit()
              ' récupérer la sortie standard
              TextBox1.Text &= proc.StandardOutput.ReadToEnd() & vbCrLf