En utilisant C#, comment puis-je obtenir une liste de tous les processus en cours sur la machine actuelle, y compris le nom de l'image, la description et l'ID du processus? Je suis après quelque chose de similaire à ce que vous verriez sous l'onglet "Processus" du gestionnaire de tâches, mais sans les informations sur les ressources.Comment retourner une liste de processus Windows en C#?
2
A
Répondre
4
Pour ce faire, vous devez utiliser les utilitaires disponibles dans le package Diagnostics. J'ai trouvé ce code et ça marche bien.
Cette ligne récupère les processus exactement. Vous pouvez alors extraire les propriétés de chaque processus.
`Process [] allProcs = Process.GetProcesses();
Le code complet est le suivant. Personnaliser comme nécessaire »
using System;
using System.Diagnostics;
public class ListProcs
{
public static void Main()
{
int totMemory = 0;
Console.WriteLine("Info for all processes:");
Process[] allProcs = Process.GetProcesses();
foreach(Process thisProc in allProcs)
{
string procName = thisProc.ProcessName;
DateTime started = thisProc.StartTime;
int procID = thisProc.Id;
int memory = thisProc.VirtualMemorySize;
int priMemory = thisProc.PrivateMemorySize;
int physMemory = thisProc.WorkingSet;
totMemory += physMemory;
int priority = thisProc.BasePriority;
TimeSpan cpuTime = thisProc.TotalProcessorTime;
Console.WriteLine("Process: {0}, ID: {1}", procName, procID);
Console.WriteLine(" started: {0}", started.ToString());
Console.WriteLine(" CPU time: {0}", cpuTime.ToString());
Console.WriteLine(" virtual memory: {0}", memory);
Console.WriteLine(" private memory: {0}", priMemory);
Console.WriteLine(" physical memory: {0}", physMemory);
}
Console.WriteLine("\nTotal physical memory used: {0}", totMemory);
}
}
Référencement de l'original article.
Questions connexes
- 1. Récupérer une liste de processus complète en utilisant C#
- 2. Comment retourner une liste générique?
- 3. Comment retourner une liste de types anonymes
- 4. retourner une seule liste de propriétés de liste dans Linq
- 5. comment retourner spécifique ammount d'entrées de liste - C# asp.net mvc
- 6. Comment retourner une chaîne java en C++ en utilisant JNI
- 7. Comment retourner ces données en C?
- 8. Comment retourner la liste des chaînes dans C#
- 9. Comment puis-je obtenir une liste de processus enfants pour un service donné en C#?
- 10. Comment obtenir une liste de connexions réseau ouvertes pour un processus en C#?
- 11. Comment exécuter une requête personnalisée et retourner une liste générique?
- 12. Descripteur de processus Windows
- 13. Comment capturer une sortie de processus binaire en C# /. NET
- 14. Comment démarrer un processus sur une machine distante en C++ sous Windows
- 15. Comment obtenir une sous-liste en C#
- 16. Comment rechercher une liste en C#
- 17. Comment trier une liste en C#?
- 18. C# Regex: retourner une collection de résultats
- 19. Verrouillage inter-processus en C#
- 20. Comment obtenir une liste des sessions Windows?
- 21. clonage une liste en C#
- 22. tar (sur Windows) une liste de fichiers dans C#
- 23. LINQ et comment retourner une liste d'un type spécifique
- 24. Comment faire une pause/reprendre un processus externe sous Windows?
- 25. Python - Sous-processus - Comment appeler une commande Piped dans Windows?
- 26. Comment obtenir des paramètres de ligne de commande de processus sur Windows 2000 en utilisant C#
- 27. Construire dynamiquement et retourner une liste Python dans une extension C Python
- 28. Windows 7 Liste de raccourcis (Windows Forms, C#)
- 29. Comment retourner l'élément maximum d'une liste en Python?
- 30. Activation de processus Tibco & Windows