据我所知,在 MSDN 文档和此处关于 SO 的其他问题中,有四种方法可以获取本地计算机名称。
Environment.MachineName;
System.Net.Dns.GetHostName();
System.Windows.Forms.SystemInformation.ComputerName;
System.Environment.GetEnvironmentVariable("COMPUTERNAME");
它们的方法返回的内容是否有区别,或者它们会一直返回完全相同的东西吗?
注意: 我第一次看到这篇文章中的列表: How do I get the local machine Name?
最佳答案
Environment.MachineName
和 System.Windows.Forms.SystemInformation.ComputerName
相同并返回计算机的 NetBIOS 名称。此名称限制为 15 个字符,并且仅在 LAN 上可见。
System.Net.Dns.GetHostName()
返回计算机的基于 TCP/IP 的主机名。通过向主机名添加域后缀,您可以跨 LAN/在 Internet 上解析计算机的 IP 地址。
System.Environment.GetEnvironmentVariable("COMPUTERNAME")
返回安装期间设置的计算机名称。 NetBIOS 和主机名最初设置为相同的名称。
关于.net - SystemInformation.ComputerName、Environment.MachineName 和 Net.Dns.GetHostName 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1233217/