Zum Inhalt springen

shell ergebnis abfragen


Empfohlene Beiträge

Geschrieben

morgen allerseits,

gibt es eine möglichkeit das ergebnis von z.B.

shell("cmd /C ipconfig"

(<-- es geht mir jetzt nicht um meine IP-einstellungen, sondern um die rückgabe des cmd-befehls) zu ermitteln?

mir ist auch jede andere möglichkeit (muss nicht Shell() sein) recht um im cmd-Fenster einen Befehl auszuführen und das ergebnis zu bekommen. :rolleyes:

ah ja bevor ichs vergesse: VB.net

lg

jasso

Geschrieben

Hmm also ich kenn mich in dem bereich nicht gerade super aus aber es gibt ja die möglichkeit das ergebniss mit:


shell "ipconfig > c:\ipc.txt"
[/php]

in eine Datei zu schreiben, da könntst du des dann rausparsen..so mein one minute lösungsansatz.. :bimei:

Geschrieben

die elegantere, aber komplexere methode ist, den inhalt des aufgerufenen prozesses (in dem fall ipconfig <parameter>) direkt in vb (z.b. ein textfeld oder ne variable) zu übernehmen und das zwischenfile erst garnicht zu verwenden.

CreatePipe -> CreateProcess -> ReadFile -> SendMessage

s'Amstel

Geschrieben
die elegantere, aber komplexere methode ist, den inhalt des aufgerufenen prozesses (in dem fall ipconfig <parameter>) direkt in vb (z.b. ein textfeld oder ne variable) zu übernehmen und das zwischenfile erst garnicht zu verwenden.

CreatePipe -> CreateProcess -> ReadFile -> SendMessage

s'Amstel

ja das würde mir eigentlich auch besser gefallen.

habe auch schon was dazu gefunden, aber noch so meine probleme das in vb.net zu konvertieren. :cool:

Geschrieben

Ich würde gern wissen, wie ich ein shell commando abfragen kann.

z.b. mit osql, wenn ein falsches passwort angegeben wird. Geht das überhaupt? Weil ich ja nur einen Integer (processID) wiederbekomme ...

Wäre für jede Hilfe dankbar

Try
Me.myID = Shell("osql -U sa -P " & Me.tbChckProgramm.Text, AppWinStyle.Hide, False, -1)
Catch ex As Exception
Debug.WriteLine("Mh, nix : " & ex.Message)
Finally
Me.lblAusgabe.Text = Me.myID.ToString
End Try[/PHP]

Geschrieben

Habe die Antwort Mittlwerweile aus einem andereb Forum erhalten.

Vielen dank an Andreas Kosch


Imports System.Diagnostics


    Private Sub btnPing_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPing.Click

        ' neuer process + Ausgabe

        Dim myProcess As New Process

        Dim myAusgabe As String


        ' wie heisst die Anwendung ?

        myProcess.StartInfo.FileName = "ping.exe"


        ' Welche parameter?

        myProcess.StartInfo.Arguments = "localhost"


        ' Für das Prozessobjekt muss die Eigenschaft 'UseShellExecute' auf 'False' gesetzt sein, um E/A-Streams umzuleiten.

        myProcess.StartInfo.UseShellExecute = False


        ' leite den Output um

        myProcess.StartInfo.RedirectStandardOutput = True


        ' 

        myProcess.StartInfo.CreateNoWindow = True


        ' starte den Prozess

        myProcess.Start()


        ' Speichere die Ausgabe in den String

        myAusgabe = myProcess.StandardOutput.ReadToEnd()


        ' warte bis fertig ist

        myProcess.WaitForExit()


        ' Schliesse prozess

        myProcess.Close()


        ' zeig mir das resultat

        MessageBox.Show(myAusgabe)

    End Sub

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...