1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Visual Basic

Discussion in 'Programmieren' started by joshi123, Feb 6, 2006.

Thread Status:
Not open for further replies.
  1. joshi123

    joshi123 Byte

    Hallo Leute, ich hoffe es kann mir jemand helfen...

    und zwar habe ich ein paar befehle in einer normalen .bat-datei stehen diese möchte ich aber jetzt in visual basic einbringen, das heisst ich habe ein Fenster mit Buttons, wenn ich auf einen button klicke, dann sollen die befehle ausgeführt werden, welche normalerweise in der .bat-datei stehen.

    es funktioniert zwar, dass ich durch drücken des buttons die bat-datei ausgeführt wird, aber dies möchte ich nicht, sondern alles via das neue Visual-Basic-Programm ausgeführt werden ohne das eine andere bat-datei ausgeführt wird.

    der code der ausgeführt werden soll, sieht folgender maßen aus :



    pushd interface

    reset all

    popd

    pushd interface ip

    set address name = "LAN-Verbindung" source = static addr = xxx.xxx.xxx.xxx mask = xxx.xxx.xxx.xxx
    set address name = "LAN-Verbindung" gateway = xxx.xxx.xxx.xxx gwmetric = x
    set dns name = "LAN-Verbindung" source = static addr = none
    set wins name = "LAN-Verbindung" source = static addr = none





    P.S.: die "X" stehen für bestimmte zahlen, die ich hier nicht veröffentlichen möchte.


    vielen dank im vorraus
    Joshi
     
  2. whisky

    whisky Ganzes Gigabyte

    Welche Version von Visual Basic?
     
  3. joshi123

    joshi123 Byte

    Version 6.0
     
  4. whisky

    whisky Ganzes Gigabyte

    Unter VB 6.0 werden Anwendungen mit dem Befehl

    Shell

    gestartet

    Beispiel:

    Code:
    Shell ("pushd interface"), vbNormalFocus
     
  5. joshi123

    joshi123 Byte

    Zur Zeit sieht mein Formular so aus :

    Private Sub Command1_Click()

    Shell "axc.bat"

    End Sub

    Es funktioniert auch, nur wollte ich eigentlich umgehen, das durch anklicken des Buttons eine Datei geöffnet wird, sondern die Befehle, welche in der BAT-Datei stehen direkt ausgeführt werden, ohne die BAT-Datei zustarten.
    In der BAT-Datei steht folgendes drin, wie auch schon in meiner ersten Antwort geschrieben und dies soll inerhalb von dem VB-Programm ausgeführt werden und nicht über eine gesonderte Datei, oder ist es möglich die BAT-Datei versteckt auszuführen (ohne das sich im Hintergrund eine DOS-Prompt öffnet??? :


    pushd interface

    reset all

    popd

    pushd interface ip

    set address name = "LAN-Verbindung" source = static addr = xxx.xxx.xxx.xxx mask = xxx.xxx.xxx.xxx
    set address name = "LAN-Verbindung" gateway = xxx.xxx.xxx.xxx gwmetric = x
    set dns name = "LAN-Verbindung" source = static addr = none
    set wins name = "LAN-Verbindung" source = static addr = none
     
  6. whisky

    whisky Ganzes Gigabyte

    Unter Vb.net wurde das ganze besser gelöst aber unter VB 6.0 kannst du es mit

    Shell ("axc.bat"), vbHide

    versuchen
     
  7. joshi123

    joshi123 Byte

    Vielen vielen Dank, es funktioniert tatsächlich!

    Was ist eigentlich der Unterschied bzw. was ist besser an VB-Net???
    und wie wird mein Problem bei VB-Net gelöst?
     
  8. whisky

    whisky Ganzes Gigabyte

    http://de.wikipedia.org/wiki/Visual_Basic

    Code:
    'Führt "Ping" mit den inhalt von argumente als Parameter aus und leitet die 
    'Standartausgabe des Programmes in die Textbox1 um
    
    Dim prog As Process = New Process
    Dim argumente As String
    
    
    prog.StartInfo.FileName = "ping "
    prog.StartInfo.Arguments = argumente
    prog.StartInfo.UseShellExecute = False
    prog.StartInfo.RedirectStandardOutput = True
    prog.StartInfo.CreateNoWindow = True
    prog.Start()
    ' Konsolenausgabe in Textbox umleiten
    TextBox1.Text = prog.StandardOutput.ReadToEnd()
    prog.WaitForExit()
    Damit hat man das DOS Programm soweit im Griff das sogar die Ausgabe in eine Textbox umgeleitet wird
     
Thread Status:
Not open for further replies.

Share This Page