Zum Inhalt springen

shell ergebnis abfragen


jasso

Empfohlene Beiträge

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

Link zu diesem Kommentar
Auf anderen Seiten teilen

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:

Link zu diesem Kommentar
Auf anderen Seiten teilen

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]

Link zu diesem Kommentar
Auf anderen Seiten teilen

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

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

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...