Làm cách nào để có được tên máy tính trong .NET c #
Làm cách nào để có được tên máy tính trong .NET c #
Câu trả lời:
System.Environment.MachineName
từ bảng điều khiển hoặc ứng dụng WinForms.HttpContext.Current.Server.MachineName
từ một ứng dụng webSystem.Net.Dns.GetHostName()
để lấy FQDNXem Cách tìm FQDN của máy cục bộ trong C # /. NET? nếu cái cuối cùng không cung cấp cho bạn FQDN và bạn cần nó.
Xem chi tiết về Sự khác biệt giữa SystemIn information.ComputerName, Môi trường.MachineName và Net.Dns.GethostName
Dns.GetHostName()
không cung cấp tên đủ điều kiện.
System.Environment.MachineName
Hoặc, nếu bạn đang sử dụng Winforms, bạn có thể sử dụng System.Windows.Forms.SystemInformation.ComputerName
, trả về chính xác cùng giá trị như System.Environment.MachineName
.
System.Environment.MachineName
open system
...let system_name = System.Environment.MachineName
Một số phương pháp được đưa ra dưới đây để có được tên máy hoặc tên máy tính
Cách 1: -
string MachineName1 = Environment.MachineName;
Cách 2: -
string MachineName2 = System.Net.Dns.GetHostName();
Cách 3: -
string MachineName3 = Request.ServerVariables["REMOTE_HOST"].ToString();
Cách 4: -
string MachineName4 = System.Environment.GetEnvironmentVariable("COMPUTERNAME");
Để biết thêm xem blog của tôi
Bạn có thể có quyền truy cập tên máy bằng Môi trường.MachineName .
Vâng, có một cách nữa: Thiết bị quản lý 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
}
Thử cái này:
string[] computer_name = System.Net.Dns.GetHostEntry(System.Web.HttpContext.Current.Request.ServerVariables["remote_addr"]).HostName.Split(new Char[] { '.' });
return computer_name[0].ToString();
Tôi đặt .InnerHtml của một <p>
ngoặc cho dự án web của mình thành tên máy tính của người dùng thực hiện như sau:
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;
}
}
}
Hãy thử cái này
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;
}