Ergebnis 1 bis 3 von 3

Thema: Wie externes Programm beenden das mit "Shell" gestartet wurde?

  1. #1

    Wie externes Programm beenden das mit "Shell" gestartet wurde?

    Hi Gemeinde,

    nachdem ich nun schon einigen helfen konnte - brauch nun ich mal Hilfe!

    Ich suche eine Funktion in VisualBasic mit der ich ein extern gestartetes Programm wieder beenden kann!

    gestartet wird das Programm mit folgendem Aufruf:
    Shell "C:\Programme\Internet Explorer\IEXPLORE.EXE " , vbMinimizedNoFocus
    Hier wird zum Beispiel der InternetExplorer geöffnet!
    Aber wie kann ich den mit VBA wieder beenden?

    Schon mal danke für´s lesen und nochmal danke wenn mir jemand helfen kann!

    Gruß -=EICHBERG=-

  2. #2
    ...wen´s interessiert, bin in einem anderen Forum fündig geworden und es funktioniert!

    -> Sollte jemand jedoch eine einfacherer Lösung haben, dann bin ich natürlich dankbar für jede Anregung!

    Daher lasse ich den thread noch ein bischen offen!

    Danke an "Nepumuk", das ist der Verfasser des Threads in einem anderen Forum, dessen Namen ich ja hier laut Forenregeln nicht nennen darf!

    Hier die Lösung von NEPUMUK:

    Option Explicit

    Private Declare Function CreateToolhelpSnapshot Lib "kernel32" Alias "CreateToolhelp32Snapshot" ( _
    ByVal lFlgas As Long, _
    ByVal lProcessID As Long) As Long

    Private Declare Function TerminateProcess Lib "kernel32" ( _
    ByVal hProcess As Long, _
    ByVal uExitCode As Long) As Long

    Private Declare Function OpenProcess Lib "kernel32" ( _
    ByVal dwDesiredAccess As Long, _
    ByVal bInheritHandle As Long, _
    ByVal dwProcessId As Long) As Long

    Private Declare Function ProcessFirst Lib "kernel32" Alias "Process32First" ( _
    ByVal hSnapshot As Long, _
    ByRef uProcess As PROCESSENTRY32) As Long

    Private Declare Function ProcessNext Lib "kernel32" Alias "Process32Next" ( _
    ByVal hSnapshot As Long, _
    ByRef uProcess As PROCESSENTRY32) As Long

    Private Declare Function CloseHandle Lib "kernel32" ( _
    ByVal hObject As Long) As Long

    Private Type PROCESSENTRY32
    dwSize As Long
    cntUsage As Long
    th32ProcessID As Long
    th32DefaultHeapID As Long
    th32ModuleID As Long
    cntThreads As Long
    th32ParentProcessID As Long
    pcPriClassBase As Long
    dwflags As Long
    szexeFile As String * 260
    End Type

    Private Const PROCESS_TERMINATE = &H1
    Private Const GW_HWNDNEXT As Long = 2

    Private Sub KillEXE(ByVal strEXEName As String)
    Dim lngHandle As Long, lngReturn As Long, lngTask As Long, lngResult As Long
    Dim udt32Current As PROCESSENTRY32
    lngHandle = CreateToolhelpSnapshot(2&, 0&)
    If lngHandle <> 0 Then
    udt32Current.dwSize = Len(udt32Current)
    lngReturn = ProcessFirst(lngHandle, udt32Current)
    Do While Not (lngReturn = 0)
    If InStr(1, udt32Current.szexeFile, strEXEName, vbTextCompare) > 0 Then
    lngTask = OpenProcess(PROCESS_TERMINATE, 0&, udt32Current.th32ProcessID)
    lngResult = TerminateProcess(lngTask, 1&)
    lngResult = CloseHandle(lngTask)
    End If
    lngReturn = ProcessNext(lngHandle, udt32Current)
    Loop
    Call CloseHandle(lngHandle)
    End If
    End Sub

    Public Sub test()
    Call KillEXE("IEXPLORE.EXE")
    End Sub
    Ihr könnt natürlich anstatt "IEXPLORE.EXE" jeden anderen Prozess beenden, aber vorsicht der Prozess wird ohne Rückfrage beendet. D.h. nichtgespeicherte Daten gehen verloren!

    Best Regards -=EICHBERG=-

  3. #3
    Wenn dann noch das Präfix umgestellt wäre, könnte ich mich mit freuen.

    So ist hier auch so

    --------------- GESCHLOSSEN --------------------

Ähnliche Themen

  1. GGG - Marinas Sperma Träume
    Von hacky1 im Forum XXX Moviez
    Antworten: 11
    Letzter Beitrag: 14.12.2008, 21:57
  2. Suche nen günstigen DVB-S Stick
    Von Seth1337 im Forum Flohmarkt
    Antworten: 0
    Letzter Beitrag: 18.06.2008, 14:14
  3. TOLLE DJ TÖNE div. Volumens ...
    Von sina32 im Forum Suche MP3s
    Antworten: 0
    Letzter Beitrag: 15.03.2008, 08:16
  4. Avalon vom "Ghost in the Shell" Macher! (»Think of "Matrix" and add brain
    Von Bärchen im Forum [Suche] & [Umfrage] für Moviez
    Antworten: 0
    Letzter Beitrag: 18.06.2002, 21:59
  5. Antworten: 7
    Letzter Beitrag: 31.01.2002, 13:43

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •