Process.GetProcessById-Methode (Int32)
Assembly: System (in system.dll)
public static Process GetProcessById ( int processId )
public static function GetProcessById ( processId : int ) : Process
Parameter
- processId
Der systemweit eindeutige Bezeichner einer Prozessressource.
Rückgabewert
Eine Process-Komponente, die der durch den processId-Parameter bezeichneten lokalen Prozessressource zugeordnet ist.Mit dieser Methode können Sie eine neue Process-Komponente erstellen und diese einer Prozessressource auf dem lokalen Computer zuordnen. Die Prozessressource muss bereits auf dem Computer vorhanden sein, da GetProcessById keine Systemressource erstellt, sondern einer Ressource eine von der Anwendung generierte Process-Komponente zuordnet. Eine Id eines Prozesses kann nur für einen Prozess abgerufen werden, der gegenwärtig auf dem Computer ausgeführt wird. Wenn Sie nach Beendigung des Prozesses einen abgelaufenen Bezeichner übergeben, löst GetProcessById eine Ausnahme aus.
Der Bezeichner eines Prozesses ist auf jedem Computer eindeutig. GetProcessById gibt höchstens einen Prozess zurück. Wenn Sie alle Prozesse abrufen möchten, die eine bestimmte Anwendung ausführen, verwenden Sie GetProcessesByName. Wenn auf dem Computer mehrere Prozesse vorhanden sind, die die angegebene Anwendung ausführen, gibt GetProcessesByName ein Array mit allen zugeordneten Prozessen zurück. Sie können diese Prozesse nacheinander nach ihrem Bezeichner abfragen. Die Prozess-ID kann im Windows Task-Manager im Bereich Processes angezeigt werden. Die Spalte PID zeigt die einem Prozess zugewiesene Prozess-ID an.
Im folgenden Beispiel werden diese Informationen abgerufen: Informationen über den aktuellen Prozess sowie über alle auf dem lokalen Computer ausgeführten Instanzen von Editor, über alle auf einem bestimmten Computer ausgeführten Instanzen von Editor (mithilfe des Computeralias und einer IP-Adresse), über alle auf dem lokalen und einem Remotecomputer ausgeführten Prozesse und über einen bestimmten Prozess auf dem lokalen Computer oder auf einem Remotecomputer (mithilfe der Prozess-ID).
using System; using System.Diagnostics; using System.ComponentModel; namespace MyProcessSample { /// <summary> /// Shell for the sample. /// </summary> class MyProcess { void BindToRunningProcesses() { // Get the current process. Process currentProcess = Process.GetCurrentProcess(); // Get all instances of Notepad running on the local // computer. Process [] localByName = Process.GetProcessesByName("notepad"); // Get all instances of Notepad running on the specifiec // computer. // 1. Using the computer alias (do not precede with "\\"). Process [] remoteByName = Process.GetProcessesByName("notepad", "myComputer"); // 2. Using an IP address to specify the machineName parameter. Process [] ipByName = Process.GetProcessesByName("notepad", "169.0.0.0"); // Get all processes running on the local computer. Process [] localAll = Process.GetProcesses(); // Get all processes running on the remote computer. Process [] remoteAll = Process.GetProcesses("myComputer"); // Get a process on the local computer, using the process id. Process localById = Process.GetProcessById(1234); // Get a process on a remote computer, using the process id. Process remoteById = Process.GetProcessById(2345, "myComputer"); } static void Main() { MyProcess myProcess = new MyProcess(); myProcess.BindToRunningProcesses(); } } }
- SecurityPermission zum Aufrufen von Process-Membern. Anforderungswert: LinkDemand; Benannte Berechtigungssätze: FullTrust.
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.