Process..::.GetProcessesByName-Methode (String)
This page is specific to:.NET Framework Version:
2.03.03.54
.NET Framework-Klassenbibliothek
Process..::.GetProcessesByName-Methode (String)

Aktualisiert: November 2007

Erstellt ein Array neuer Process-Komponenten und ordnet diese allen Prozessressourcen auf dem lokalen Computer zu, die den angegebenen Prozessnamen gemeinsam verwenden.

Namespace:  System.Diagnostics
Assembly:  System (in System.dll)
Syntax

public static Process[] GetProcessesByName(
    String processName
)

Parameter

processName
Typ: System..::.String
Der angezeigte Name des Prozesses.

Rückgabewert

Typ: array<System.Diagnostics..::.Process>[]()[]
Ein Array vom Typ Process, das die Prozessressourcen darstellt, die die angegebene Anwendung oder Datei ausführen.
Ausnahmen

AusnahmeBedingung
InvalidOperationException

Beim Zugriff auf die Leistungsindikator-APIs zum Abrufen der Prozessinformationen sind Probleme aufgetreten. Diese Ausnahme tritt nur bei Windows NT, Windows 2000 und Windows XP auf.

Hinweise

Mit dieser Methode können Sie ein Array neuer Process-Komponenten erstellen und diese allen Prozessressourcen zuordnen, die dieselbe ausführbare Datei auf dem lokalen Computer ausführen. Die Prozessressourcen müssen bereits auf dem lokalen Computer vorhanden sein, da GetProcessesByName keine Systemressourcen erstellt, sondern diese Process-Komponenten zuordnet, die durch die Anwendung generiert sind. Ein processName kann für eine ausführbare Datei angegeben werden, die gegenwärtig nicht auf dem lokalen Computer ausgeführt wird, sodass das von der Methode zurückgegebene Array leer sein kann.

Der Prozessname ist ein angezeigter Name für den Prozess, z. B. Outlook, der nicht die Erweiterung .exe oder den Pfad enthält. GetProcessesByName ist nützlich, um alle Prozesse, die derselben ausführbaren Datei zugeordnet sind, abzurufen und zu ändern. So können Sie z. B. den Namen einer ausführbaren Datei als processName-Parameter übergeben, um alle laufenden Instanzen dieser ausführbaren Datei zu beenden.

Obwohl eine Id eines Prozesses für eine einzelne Prozessressource im System eindeutig ist, können mehrere Prozesse auf dem lokalen Computer die durch den processName-Parameter bezeichnete Anwendung ausführen. Daher gibt GetProcessById höchstens einen Prozess zurück, während GetProcessesByName ein Array mit allen zugeordneten Prozessen zurückgibt. Wenn Sie den Prozess unter Verwendung von Standard-API-Aufrufen ändern müssen, können Sie jeden dieser Prozesse nacheinander nach dem Bezeichner abfragen. Sie können auf Prozessressourcen nicht über den Prozessnamen allein zugreifen. Sobald Sie jedoch ein Array von Process-Komponenten abgerufen haben, die den Prozessressourcen zugeordnet sind, können Sie Systemressourcen starten, beenden und anderweitig verändern.

Beispiele

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).

Imports System
Imports System.Diagnostics
Imports System.ComponentModel


Namespace MyProcessSample
    _
   '/ <summary>
   '/ Shell for the sample.
   '/ </summary>
   Class MyProcess




      Sub BindToRunningProcesses()
         ' Get the current process.
         Dim currentProcess As Process = Process.GetCurrentProcess()


         ' Get all instances of Notepad running on the local
         ' computer.
         Dim localByName As Process() = Process.GetProcessesByName("notepad")


         ' Get all instances of Notepad running on the specifiec
         ' computer.
         ' 1. Using the computer alias (do not precede with "\\").
         Dim remoteByName As Process() = Process.GetProcessesByName("notepad", "myComputer")

         ' 2. Using an IP address to specify the machineName parameter. 
         Dim ipByName As Process() = Process.GetProcessesByName("notepad", "169.0.0.0")


         ' Get all processes running on the local computer.
         Dim localAll As Process() = Process.GetProcesses()


         ' Get all processes running on the remote computer.
         Dim remoteAll As Process() = Process.GetProcesses("myComputer")


         ' Get a process on the local computer, using the process id.
         Dim localById As Process = Process.GetProcessById(1234)


         ' Get a process on a remote computer, using the process id.
         Dim remoteById As Process = Process.GetProcessById(2345, "myComputer")
      End Sub 'BindToRunningProcesses




      Shared Sub Main()

         Dim myProcess As New MyProcess()


         myProcess.BindToRunningProcesses()
      End Sub 'Main 
   End Class 'MyProcess
End Namespace 'MyProcessSample


Berechtigungen

  • LinkDemand 

    für volle Vertrauenswürdigkeit für den unmittelbaren Aufrufer. Dieser Member kann nicht von teilweise vertrauenswürdigem Code verwendet werden.

Plattformen

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Versionsinformationen

.NET Framework

Unterstützt in: 3.5, 3.0, 2.0, 1.1, 1.0
Siehe auch

Referenz

Page view tracker
Bewerten Sie die kompakte Bibliothek
x
Kompakte Builds ohne Skripts (niedrige Bandbreite) durch zusätzliche, von Ihnen angeforderte Funktionen: ein Suchfeld und die Auswahlmöglichkeit einer Standardcodesprache.
Gefällt Ihnen das Suchfeld?
Gefallen Ihnen die Codeblöcke im Registerformat?
Wie nützlich ist dieses Thema?
Erzählen Sie uns mehr.
Vielen Dank
x
Sie helfen uns dabei, MSDN Online zu verbessern.
Rückmeldung
Ansicht wechseln
Klassisch
Kompakt
Ohne Skripts
Ansicht wechseln