¿Cómo obtengo el nombre de la computadora en .NET?

¿Cómo obtengo el nombre de la computadora en .NET c #

  • System.Environment.MachineName desde una consola o aplicación WinForms.
  • HttpContext.Current.Server.MachineName desde una aplicación web
  • System.Net.Dns.GetHostName() para obtener el FQDN

Consulte ¿Cómo encontrar el FQDN de la máquina local en C # /. NET? si el último no le proporciona el FQDN y lo necesita.

Consulte los detalles sobre la diferencia entre SystemInformation.ComputerName, Environment.MachineName y Net.Dns.GetHostName.

System.Environment.MachineName

O bien, si usa Winforms, puede usar System.Windows.Forms.SystemInformation.ComputerName , que devuelve exactamente el mismo valor que System.Environment.MachineName .

 System.Environment.MachineName 
 string name = System.Environment.MachineName; 

Bueno, hay una forma más: Instrumentación de administración de Windows

 using System.Management; try { ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\CIMV2", "SELECT Name FROM Win32_ComputerSystem"); foreach (ManagementObject queryObj in searcher.Get()) { Console.WriteLine("-----------------------------------"); Console.WriteLine("Win32_ComputerSystem instance"); Console.WriteLine("-----------------------------------"); Console.WriteLine("Name: {0}", queryObj["Name"]); } } catch (ManagementException e) { // exception handling } 

MSDN

WMI

Creador de código WMI

Preguntas frecuentes

Puede tener acceso al nombre de la máquina usando Environment.MachineName .

Prueba esto:

 string[] computer_name = System.Net.Dns.GetHostEntry(System.Web.HttpContext.Current.Request.ServerVariables["remote_addr"]).HostName.Split(new Char[] { '.' }); return computer_name[0].ToString(); 

Establecí el .InnerHtml de un

paréntesis para mi proyecto web en el nombre de la computadora del usuario haciendo lo siguiente:

HTML:

  

Your Computer Name Is

Learn more »

DO#:

 using System; using System.Web.UI; namespace GetPCName { public partial class _Default : Page { protected void Page_Load(object sender, EventArgs e) { pcname.InnerHtml = Environment.MachineName; } } } 

Prueba este.

 public static string GetFQDN() { string domainName = NetworkInformation.IPGlobalProperties.GetIPGlobalProperties().DomainName; string hostName = Dns.GetHostName(); string fqdn = “”; if (!hostName.Contains(domainName)) fqdn = hostName + “.” +domainName; else fqdn = hostName; return fqdn; } 

2 métodos más útiles: System.Environment.GetEnvironmentVariable (“ComputerName”)

System.Environment.GetEnvironmentVariable (“ClientName”) para obtener el nombre de la PC del usuario si están conectados a través de Citrix XenApp o Terminal Services (también conocido como RDS, RDP, Escritorio remoto)

Algunos métodos se dan a continuación para obtener el nombre de la máquina o el nombre de la computadora

Método 1:-

 string MachineName1 = Environment.MachineName; 

Método 2: –

 string MachineName2 = System.Net.Dns.GetHostName(); 

Método 3: –

 string MachineName3 = Request.ServerVariables["REMOTE_HOST"].ToString(); 

Método 4:

 string MachineName4 = System.Environment.GetEnvironmentVariable("COMPUTERNAME"); 

Para más ver mi blog