Maison > Java > javaDidacticiel > Comment Java peut-il récupérer une liste complète des processus et fenêtres actifs sur différents systèmes d'exploitation ?

Comment Java peut-il récupérer une liste complète des processus et fenêtres actifs sur différents systèmes d'exploitation ?

DDD
Libérer: 2024-12-14 14:15:12
original
539 Les gens l'ont consulté

How can Java retrieve a comprehensive list of active processes and windows across different operating systems?

Comment obtenir une liste complète des processus actifs et des fenêtres à l'aide de Java

Problème :

Concevoir une solution multiplateforme en Java pour récupérer une liste énumérée des processus en cours d'exécution et des fenêtres ouvertes, analogue au fonction 'liste des tâches' sous Windows.

Solution :

Java propose une bibliothèque robuste pour interagir avec le système d'exploitation sous-jacent, vous permettant de récupérer un catalogue de processus actifs et Windows à l'aide de commandes natives. Voici deux approches :

Approche 1 : analyse de la liste des processus à partir de la commande

Cette approche exploite la commande 'ps' (présente sur la plupart des systèmes de type Unix) pour lister tous les processus en cours d'exécution, y compris leurs détails pertinents.

try {
    String line;
    Process p = Runtime.getRuntime().exec("ps -e");
    BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));
    while ((line = input.readLine()) != null) {
        System.out.println(line); //<-- Parse data here.
    }
    input.close();
} catch (Exception err) {
    err.printStackTrace();
}
Copier après la connexion

Approche 2 : Utilisation de la commande Tasklist sur Windows

Pour les systèmes Windows, la commande « ps » n'est pas disponible. Au lieu de cela, vous pouvez utiliser l'utilitaire « tasklist » pour récupérer les informations de processus.

Process p = Runtime.getRuntime().exec(System.getenv("windir") +"\system32\"+"tasklist.exe");
Copier après la connexion

Analyse et traitement des données

Une fois que vous avez exécuté la commande appropriée, vous pouvez analysez la sortie pour extraire des détails spécifiques sur un processus ou une fenêtre, tels que l'ID du processus, le nom ou le titre de la fenêtre. L'utilisation des capacités d'analyse de chaînes et des expressions régulières de Java peut simplifier cette tâche.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal