In VB prüfen ob ein Prozess läuft

4 Antworten

Prüfe erste , ob Dein gesuchter Process überhaupt den von Dir vorgegebenen Namen hat?

Liste doch alle Processe in einer ListBox auf.

Das geht mit folgendem Code:

  Sub ListProcesses()
    ListBox1.Items.Clear()
    Dim p As Process
    For Each p In Diagnostics.Process.GetProcesses()
      ListBox1.Items.Add(Format(p.Id, "0000") & " = " & p.ProcessName)
    Next
  End Sub

Wenn Du den Process so nicht findest dann verwende beispielsweise die Titelzeile.des zugehörigen Programms (p.MainWindowTitle)

Ich bin mir nicht sicher aber ich glaube es den Befehl process.exists wenn du das in if setzt sollte es funktionieren

Keine Ahnung ob das mit der Prozessabfrage so klappt. Aber grundsätzlicher Fehler ist, dass du ein Else in deiner Schleife hast und diese auch nie abbricht Sprich, selbst wenn der betreffende Prozess gefunden wird, so wird mit hoher Wahrscheinlichkeit noch min. 1 Durchlauf erfolgen und dort die Else Bedingung greifen.

Dim p As Process
For Each p In Diagnostics.Process.GetProcesses()
    If p.ProcessName = "..." Then
        Form1.Label1.Text = "..."
    Else
        Form1.Label1.Text = "..."
    End If
Next

Wusste nicht wie ich die Frage bearbeiten kann und der Code is leider verrutscht, deswegen hab ich das schnell so gemacht.