haegar75
Goto Top

Anhand PID prüfen ob Prozess läuft

Hallo Leute,
ich benötige eure Hilfe..
Mein Programm startet eine weitere Anwendung und beendet diese wieder wenn es beendet wird.

      Dim instance As New ProcessStartInfo
        instance.WorkingDirectory = FS.GetParentPath(Pfad)
        instance.FileName = Pfad
        Dim p As Process = Process.Start(instance)
Falls das zweite Programm allerdings vorzeitig bendet wurde, erzeugt mein

p.Kill() 

eine Exception.. Wie kann ich vorher prüfen ob es was zum beenden gibt? Der Name der 2. Anwendung kann variieren..

Gruß Haegar

Content-ID: 154914

Url: https://administrator.de/contentid/154914

Ausgedruckt am: 25.11.2024 um 00:11 Uhr

bastla
bastla 11.11.2010 um 19:10:38 Uhr
Goto Top
Hallo Haegar75!

Entweder einfach per "Try" oder tatsächlich unter Verwendung der PID etwa in der Art (ungetestet):
Dim proc As Process, IsActive As Boolean = False, PID As String = p.Id.ToString()
For Each proc In Process.GetProcesses
    If proc.Id.ToString() = PID Then
        IsActive = True
        Exit For
    End If
Next proc
If IsActive Then p.Kill()
Grüße
bastla
Haegar75
Haegar75 12.11.2010 um 07:25:43 Uhr
Goto Top
Hallo Bastla,
so gehts jetzt auch ohne Exception! Vielen Dank!
VG Haegar