2017-02-28 1 views

Antwort

0

tasklist.exe nimmt einen optionalen Parameter /v für ausführliche. Dies gibt die Beschreibung

Beispiel

taskmgr.exe 5648 Console 1 18,280 K Running 0:00:00 Windows Task Manager 

Sie benötigen, um Ihren Anruf zu aktualisieren, um() exec den "/ v" zu übergeben. Vollständiges Beispiel einschließlich Parsing.

public static void main(String[] args) throws IOException { 
    String taskListExe = System.getenv("windir") + "\\system32\\" + "tasklist.exe"; 
    Process p = Runtime.getRuntime().exec(new String[] { taskListExe, "/v" }); 

    BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream())); 
    Pattern pattern = Pattern.compile("(.*?)\\s+(\\d+).*(\\d+:\\d+:\\d+)\\s+(.*?)"); 
    String line; 
    while ((line = input.readLine()) != null) { 
     Matcher matcher = pattern.matcher(line); 
     if (matcher.matches()) { 
      System.out.println(String.format("%s, pid = %s, description = %s", matcher.group(1), matcher.group(2), 
        matcher.group(4))); 
     } 
    } 
    input.close(); 
} 

Ausgabe

firefox.exe, pid = 3152, description = cmd - Get the windows running process description In java - Stack Overfl 
taskmgr.exe, pid = 5648, description = Windows Task Manager 
System Idle Process, pid = 0, description = N/A  
+0

bitte den ganzen Befehl schreiben? Hinzufügen von/v gibt mir Fehler ..... –

+0

zeigt nicht die Beschreibung eines Prozesses –

+0

Ihr Programm Ausgabe der Fenstertitel, aber ich brauche die Beschreibung .... bitte sehen Sie den Task-Manager gibt es eine Spalte namens Beschreibung ... wo der genaue Dateiname wird angezeigt ... –

Verwandte Themen