Informationen des eigenen oder eines anderen Prozesses auslesen

Thomas Darimont

Erfahrenes Mitglied
Hallo,

hier mal ein Beispiel wie man Prozessinformationen eines beliebigen Prozesses auslesen kann:
C#:
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading;
using System.Diagnostics;

namespace De.Tutorials.Training
{
    public class ProcessInformationExample
    {
        public static void Main(string[] args)
        {
            PrintThreadIdsFor(Process.GetProcessById(3840)); //explorer.exe
            Console.WriteLine("##################");
            PrintThreadIdsFor(Process.GetCurrentProcess());
            Console.WriteLine("##################");
            PrintThreadIdsFor(Process.GetProcessesByName("eclipse")[0]);

            
        }

        private static void PrintThreadIdsFor(Process process)
        {
            Console.WriteLine("Process: " + process.ProcessName);
            foreach (ProcessThread processThread in process.Threads)
            {
                Console.WriteLine("Thread: " + processThread.Id);
            }
        }
    }
}

Ausgabe:
Code:
Process: explorer
Thread: 3844
Thread: 3944
Thread: 3948
Thread: 3956
Thread: 3964
Thread: 4064
Thread: 880
Thread: 1000
Thread: 1064
Thread: 320
Thread: 1900
Thread: 2184
Thread: 900
Thread: 1036
Thread: 4076
Thread: 3584
##################
Process: De.Tutorials.Training
Thread: 1192
Thread: 3520
Thread: 3808
##################
Process: eclipse
Thread: 3292
Thread: 1688
Thread: 2136
Thread: 2708
Thread: 3640
Thread: 3308
Thread: 960
Thread: 3652
Thread: 4048
Thread: 3472
Thread: 2964
Thread: 2852
Thread: 1712
Thread: 1368
Thread: 3384
Thread: 608
Thread: 2244
Thread: 2404
Thread: 2680
Thread: 2840
Thread: 3576
Thread: 3568
Thread: 2268
Drücken Sie eine beliebige Taste . . .

Gruß Tom
 
Zurück