Comment obtenir le nom de l'ordinateur en .NET c #
Comment obtenir le nom de l'ordinateur en .NET c #
Réponses:
System.Environment.MachineName
à partir d'une console ou d'une application WinForms.HttpContext.Current.Server.MachineName
à partir d'une application webSystem.Net.Dns.GetHostName()
obtenir le FQDNVoir Comment trouver le nom de domaine complet de la machine locale dans C # /. NET? si le dernier ne vous donne pas le FQDN et que vous en avez besoin.
Voir les détails sur la différence entre SystemInformation.ComputerName, Environment.MachineName et Net.Dns.GetHostName
Dns.GetHostName()
cela ne donnait pas le nom complet.
System.Environment.MachineName
Ou, si vous utilisez Winforms, vous pouvez utiliser System.Windows.Forms.SystemInformation.ComputerName
, qui renvoie exactement la même valeur que System.Environment.MachineName
.
System.Environment.MachineName
open system
...let system_name = System.Environment.MachineName
Certaines méthodes sont données ci-dessous pour obtenir le nom de la machine ou le nom de l'ordinateur
Méthode 1: -
string MachineName1 = Environment.MachineName;
Méthode 2: -
string MachineName2 = System.Net.Dns.GetHostName();
Méthode 3: -
string MachineName3 = Request.ServerVariables["REMOTE_HOST"].ToString();
Méthode 4: -
string MachineName4 = System.Environment.GetEnvironmentVariable("COMPUTERNAME");
Pour plus voir mon blog
Vous pouvez avoir accès au nom de la machine à l' aide de Environment.MachineName .
Eh bien, il existe un autre moyen: Windows Management Instrumentation
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
}
Essaye ça:
string[] computer_name = System.Net.Dns.GetHostEntry(System.Web.HttpContext.Current.Request.ServerVariables["remote_addr"]).HostName.Split(new Char[] { '.' });
return computer_name[0].ToString();
J'ai défini le .InnerHtml d'un <p>
support pour mon projet Web sur le nom d'ordinateur de l'utilisateur en procédant comme suit:
HTML:
<div class="col-md-4">
<h2>Your Computer Name Is</h2>
<p id="pcname" runat="server"></p>
<p>
<a class="btn btn-default" href="#">Learn more »</a>
</p>
</div>
C #:
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;
}
}
}
Essaye celui-là.
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;
}