Process.MachineName Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene il nome del computer sul quale è in esecuzione il processo associato.
public:
property System::String ^ MachineName { System::String ^ get(); };
public string MachineName { get; }
[System.ComponentModel.Browsable(false)]
public string MachineName { get; }
member this.MachineName : string
[<System.ComponentModel.Browsable(false)>]
member this.MachineName : string
Public ReadOnly Property MachineName As String
Valore della proprietà
Nome del computer sul quale è in esecuzione il processo associato.
- Attributi
Eccezioni
A questo oggetto Process non è associato alcun processo.
Esempio
Per usare l'esempio seguente, è necessario innanzitutto avviare almeno un'istanza del Blocco note in un computer remoto. Nell'esempio viene richiesto il nome del computer remoto in cui è in esecuzione il Blocco note e quindi vengono visualizzate le rispettive ProcessNameproprietà , Ide MachineName per ogni istanza.
using System;
using System.Diagnostics;
class GetProcessesByNameClass
{
public static void Main(string[] args)
{
Console.WriteLine("Create notepad processes on remote computer");
Console.Write("Enter remote computer name : ");
string remoteMachineName = Console.ReadLine();
if (remoteMachineName == null)
{
// Prepend a new line to prevent it from being on the same line as the prompt.
Console.WriteLine(Environment.NewLine + "You have to enter a remote computer name.");
return;
}
try
{
// 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.WriteLine(
$"Process Name : {myProcess.ProcessName}\n" +
$"Process ID : {myProcess.Id}\n" +
$"MachineName : {myProcess.MachineName}");
}
}
catch (ArgumentException)
{
Console.WriteLine($"The value \'{remoteMachineName}\' is an invalid remote computer name.");
}
catch (InvalidOperationException)
{
Console.WriteLine("Unable to get process information on the remote computer.");
}
catch (PlatformNotSupportedException)
{
Console.WriteLine(
"Finding notepad processes on remote computers " +
"is not supported on this operating system.");
}
}
}
Imports System.Diagnostics
Class GetProcessesByNameClass
'Entry point which delegates to C-style main Private Function
Public Overloads Shared Sub Main()
Main(Environment.GetCommandLineArgs())
End Sub
Public Overloads Shared Sub Main(ByVal args() As String)
Console.WriteLine("Create notepad processes on remote computer")
Console.Write("Enter remote computer name : ")
Dim remoteMachineName As String = Console.ReadLine()
If remoteMachineName Is Nothing Then
' Prepend a new line to prevent it from being on the same line as the prompt.
Console.WriteLine(Environment.NewLine + "You have to enter a remote computer name.")
Return
End If
Try
' 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 ArgumentException
Console.WriteLine("The value '" & remoteMachineName & "' is an invalid remote computer name.")
Catch e As PlatformNotSupportedException
Console.WriteLine(
"Finding notepad processes on remote computers " &
"is not supported on this operating system.")
Catch e As InvalidOperationException
Console.WriteLine("Unable to get process information on the remote computer.")
End Try
End Sub
End Class
Commenti
È possibile visualizzare dati statistici ed elaborare informazioni per i processi in esecuzione in computer remoti, ma non è possibile chiamare Start, CloseMainWindowo Kill nei computer remoti.
Nota
Quando il processo associato viene eseguito nel computer locale, questa proprietà restituisce un punto (".") per il nome del computer. È consigliabile usare la Environment.MachineName proprietà per ottenere il nome del computer corretto.