Freigeben über


Process.MachineName-Eigenschaft

Ruft den Namen des Computers ab, auf dem der zugeordnete Prozess ausgeführt wird.

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

Syntax

'Declaration
Public ReadOnly Property MachineName As String
'Usage
Dim instance As Process
Dim value As String

value = instance.MachineName
public string MachineName { get; }
public:
property String^ MachineName {
    String^ get ();
}
/** @property */
public String get_MachineName ()
public function get MachineName () : String

Eigenschaftenwert

Der Name des Computers, auf dem der zugeordnete Prozess ausgeführt wird.

Ausnahmen

Ausnahmetyp Bedingung

InvalidOperationException

Diesem Process-Objekt ist kein Prozess zugeordnet.

Hinweise

Für Prozesse, die auf Remotecomputern ausgeführt werden, können Sie statistische Daten und Prozessinformationen anzeigen lassen. Sie können auf Remotecomputern jedoch nicht Start, CloseMainWindow oder Kill aufrufen.

Hinweis

Wenn der zugeordnete Prozess auf dem lokalen Computer ausgeführt wird, gibt diese Eigenschaft einen Punkt (".") für den Computernamen zurück. Sie sollten die Environment.MachineName-Eigenschaft verwenden, um den richtigen Computernamen abzurufen.

Beispiel

Um das folgende Beispiel zu verwenden, müssen Sie zuerst mindestens eine Instanz von Editor auf einem Remotecomputer starten. Im Beispiel wird der Name des Remotecomputers angefordert, auf dem Editor ausgeführt wird. Dann werden die jeweilige ProcessName-Eigenschaft, die Id-Eigenschaft und die MachineName-Eigenschaft für jede Instanz angezeigt.

Imports System
Imports System.Diagnostics
Imports Microsoft.VisualBasic

Class GetProcessesByNameClass

   'Entry point which delegates to C-style main Private Function
   Public Overloads Shared Sub Main()
      Main(System.Environment.GetCommandLineArgs())
   End Sub

   Public Overloads Shared Sub Main(ByVal args() As String)
      Try

         Console.Writeline("Create notepad processes on remote computer")
         Console.Write("Enter remote computer name : ")
         Dim remoteMachineName As String = Console.ReadLine()
         ' Get all notepad processess into Process array.
         Dim myProcesses As Process() = Process.GetProcessesByName _
                                             ("notepad", remoteMachineName)
         If myProcesses.Length = 0 Then
            Console.WriteLine("Could not find notepad processes on remote computer.")
         End If
         Dim myProcess As Process
         For Each myProcess In myProcesses
            Console.WriteLine("Process Name : " & myProcess.ProcessName & _
                          "  Process ID : " & myProcess.Id & _
                          "  MachineName : " & myProcess.MachineName)
         Next myProcess

      Catch e As SystemException
         Console.Write("Caught Exception .... : " & e.Message)
      Catch e As Exception
         Console.Write("Caught Exception .... : " & e.Message)
      End Try
   End Sub 'Main
End Class 'GetProcessesByNameClass
using System;
using System.Diagnostics;

class GetProcessesByNameClass
{
   public static void Main(string[] args)
   {
      try
      {

         Console.Write("Create notepad processes on remote computer \n");
         Console.Write("Enter remote computer name : ");
         string remoteMachineName = Console.ReadLine();
         // Get all notepad processess into Process array.
         Process[] myProcesses = Process.GetProcessesByName("notepad",remoteMachineName);
         if(myProcesses.Length == 0)
            Console.WriteLine("Could not find notepad processes on remote computer.");
         foreach(Process myProcess in myProcesses)
         {
            Console.Write("Process Name : " + myProcess.ProcessName + "  Process ID : "
               + myProcess.Id + "  MachineName : " + myProcess.MachineName + "\n");
         }

      }
      catch(SystemException e)
      {
         Console.Write("Caught Exception .... : " + e.Message);
      }
      catch(Exception e)
      {
         Console.Write("Caught Exception .... : " + e.Message);
      }
   }
}
#using <System.dll>

using namespace System;
using namespace System::Diagnostics;
int main()
{
   try
   {
      Console::Write( "Create notepad processes on remote computer \n" );
      Console::Write( "Enter remote computer name : " );
      String^ remoteMachineName = Console::ReadLine();
      
      // Get all notepad processess into Process array.
      array<Process^>^myProcesses = Process::GetProcessesByName( "notepad", remoteMachineName );
      if ( myProcesses->Length == 0 )
            Console::WriteLine( "Could not find notepad processes on remote computer." );
      Collections::IEnumerator^ myEnum = myProcesses->GetEnumerator();
      while ( myEnum->MoveNext() )
      {
         Process^ myProcess = safe_cast<Process^>(myEnum->Current);
         Console::Write( "Process Name : {0}  Process ID : {1}  MachineName : {2}\n", myProcess->ProcessName, myProcess->Id, myProcess->MachineName );
      }
   }
   catch ( SystemException^ e ) 
   {
      Console::Write( "Caught Exception .... : {0}", e->Message );
   }
   catch ( Exception^ e ) 
   {
      Console::Write( "Caught Exception .... : {0}", e->Message );
   }

}

.NET Framework-Sicherheit

Plattformen

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.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

Process-Klasse
Process-Member
System.Diagnostics-Namespace
GetProcesses
GetProcessById
GetProcessesByName