+ Auf Thema antworten
Seite 1 von 2
1 2 LetzteLetzte
Zeige Ergebnis 1 bis 10 von 11

Thema: Programm beenden

  1. #1
    xtend
    Guest

    Programm beenden

    Hallo!

    Ich suche eine Möglichkeit, mit VBS Anwendungen zu beenden.

    Ich muss zwei Batch-Dateien und dann den Internet-Explorer starten (mache ich mit WScrip.run und beim IE mit true am schluss), wenn der IE beendet wird, sollen die zwei Batch-Dateien auch beendet werden. Wie funktioniert das?

    Und wie kann ich mit VBS in ein Dos-Fenster hineinschreiben?

    vielen dank für die antworten

    david

  2. #2

    Hallo!

    Nachdem du http://dieseyer.de/dse-wsh-scr-b.html#progstrt gelesen (und verstanden) hast, kannst du es so machen:

    Set ProgBat1 = WshShell.Exec( "erste.bat")
    Set ProgBat2 = WshShell.Exec( "zweite.bat")

    mit .Run (und true) den IE starten
    (wenn der IE beendet ist)

    Set ProgBat1 = nothing
    Set ProgBat2 = nothing
    Bis dann - dieseyer

    Und zwischendurch: http://dieseyer.de
    Leichter zu merken: http://wsh-vbs.de

  3. #3
    Chäsi
    Guest

    Zitat Zitat von dieseyer
    Set ProgBat1 = WshShell.Exec( "erste.bat")
    Set ProgBat2 = WshShell.Exec( "zweite.bat")

    mit .Run (und true) den IE starten
    (wenn der IE beendet ist)

    Set ProgBat1 = nothing
    Set ProgBat2 = nothing
    hm... das geht bei mir nit! Es gibt zwar keinen Fehler aus, aber das Programm beendet nicht, wenn ich ihm nothing zuweise

    Zur Info: Ich hab ein eigenes kleines VB-Programm geschrieben, das nur Infos ausgibt. Keine Schliess-Buttons oder so was!

    Hat einer ne Idee, wie ich das beenden könnte?

    mfg Chäsi

  4. #4
    Urgestein Benutzerbild von James Blond
    Registriert seit
    Feb 2001
    Ort
    im Internet, wo sonst
    Alter
    28
    Beiträge
    2.743
    Blog-Einträge
    61

    Da gibt es 3 Möglichkeiten

    1. Unload Me 'aktuelle Form schließen
    2. Me.Hide 'aktuelle Form verstecken
    3 End 'aktuelles Programm beenden

    Du hast die Wahl.
    Urlaub machen

    Ich bin Admin, ich darf das

  5. #5
    Chäsi
    Guest

    sorry, du hast mich glaub ich falsch verstanden. Nicht das Programm soll sich selber beenden sondern das VB-Script soll das Programm beenden...

  6. #6
    Urgestein Benutzerbild von James Blond
    Registriert seit
    Feb 2001
    Ort
    im Internet, wo sonst
    Alter
    28
    Beiträge
    2.743
    Blog-Einträge
    61

    Ab und an hilft es den "kleinen" großen Link Search auf der Seite zu benutzen, dann hättest Du folgendes gefunden

    http://www.source-center.de/board/viewtopic.php?t=1590

    Dort gibt es eine Antwort.

    Code:
    set wmi = GetObject("winmgmts:") 
    set system = wmi.instancesOf("win32_process") 
    for each process in system 
      if lcase(process.name)="DeinProgg.exe" then 
        process.Terminate (0) 
      end if 
    next
    Geändert von James Blond (22.01.2005 um 13:58 / @582 Uhr)
    Urlaub machen

    Ich bin Admin, ich darf das

  7. #7

    Hallo!

    WER hat denn den Müll geschrieben:
    Set ProgBat1 = nothing
    Set ProgBat2 = nothing
    Richtig muss es heißen:
    Code:
    ProgBat2.Terminate
    ProgBat1.Terminate
    Mehr dazu: http://dieseyer.de/dse-wsh-scr-b.html#exec
    Geändert von dieseyer (18.01.2005 um 06:50 / @285 Uhr)
    Bis dann - dieseyer

    Und zwischendurch: http://dieseyer.de
    Leichter zu merken: http://wsh-vbs.de

  8. #8
    Chäsi
    Guest

    Danke Jungs, mit terminate funktioniert es wunderbar

    mfg Chäsi


    PS: @ James Blond
    hab schon gesucht, aber nix gefunden

  9. #9
    Urgestein Benutzerbild von James Blond
    Registriert seit
    Feb 2001
    Ort
    im Internet, wo sonst
    Alter
    28
    Beiträge
    2.743
    Blog-Einträge
    61

    Code:
    ' notepadkiller.vbs
    ' Beendet alle Instanzen von Notepad
    ' (C) Tobias Weltner, c't 13/2001
    
    ' mit WMI verbinden
    on error resume next
    set wmi = GetObject("winmgmts:")
    if err.number<>0 then
      MsgBox "WMI nicht installiert!"
      WScript.Quit
    end if
    on error goto 0
    
    ' Anfrage formulieren
    wql = "select * from win32_process"
    
    ' Absenden
    set ergebnis = wmi.ExecQuery(wql)
    
    ' Auswerten
    for each objekt in ergebnis
      liste = liste & objekt.name & " Prozess-ID: " & objekt.processID & vbCr
    next
    
    
    WScript.Echo "Liste aller Prozesse:" & vbCr & liste
    MsgBox "Beende nun alle Notepad-Instanzen!"
    
    wql = "select * from win32_process where name='notepad.exe'"
    set ergebnis = wmi.ExecQuery(wql)
    
    counter = 0
    for each notepad in ergebnis
      counter = counter + 1
      notepad.Terminate 0
    next
    
    MsgBox "Habe " & counter & " Notepads geschlossen!"
    Urlaub machen

    Ich bin Admin, ich darf das

  10. #10

    Zitat Zitat von James Blond
    Code:
    set wmi = GetObject("winmgmts:") 
    set system = wmi.instancesOf("win32_process") 
    for each process in system 
    if lcase(process.name)="DeinProgg.exe" then 
    process.Terminate (0) 
    end if 
    next
    -> Der hervorgehobene Teil muss klein geschrieben werden, sonst wird der Prozess nicht gefunden.

+ Auf Thema antworten

Ähnliche Themen

  1. VBS Beenden ohne Loop
    By CorteX in forum VBS
    Replies: 1
    Letzter Beitrag: 03.05.2007, 13:43 / @530
  2. Replies: 4
    Letzter Beitrag: 20.03.2007, 09:35 / @399
  3. Replies: 0
    Letzter Beitrag: 12.02.2007, 13:43 / @571
  4. C++ programm ohne Fenster
    By marv93 in forum C und C++
    Replies: 0
    Letzter Beitrag: 19.01.2007, 19:46 / @823
  5. VPN einwählen und mit Script beenden
    By Hering in forum VBS
    Replies: 2
    Letzter Beitrag: 17.01.2007, 12:18 / @512

Forumregeln

  • Es ist dir nicht erlaubt, neue Themen zu verfassen.
  • Es ist dir nicht erlaubt, auf Beiträge zu antworten.
  • Es ist dir nicht erlaubt, Anhänge hochzuladen.
  • Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.