[C#] 取得使用者名稱、主機名稱、主機IP
前言
最近剛好遇到需要顯示主機資訊的需求,
在網路上尋找了一下資料,
順便寫下來分享並做個備忘
實際演練
我將程式碼統一寫在ServerInfoUtility的Class中,
主要提供了三個功能
1. 取得主機名稱
2. 取得登入帳號
3. 取得IP位置烈表
/// Get Server's Info
/// </summary>
public static class ServerInfoUtility
{
/// <summary>
/// Gets the name of the server.
/// </summary>
/// <returns>Server name</returns>
public static string GetServerName()
{
return Environment.MachineName;
// Or can use
// return System.Net.Dns.GetHostName();
// return System.Windows.Forms.SystemInformation.ComputerName;
// return System.Environment.GetEnvironmentVariable("COMPUTERNAME");
}
/// <summary>
/// Gets the login account.
/// </summary>
/// <returns>Login account</returns>
public static string GetLoginAccount()
{
return System.Security.Principal.WindowsIdentity.GetCurrent().Name;
}
/// <summary>
/// Gets the ip addresses.
/// </summary>
/// <returns>ip addresses</returns>
public static string[] GetIpAddresses()
{
string hostName = GetServerName();
return System.Net.Dns.GetHostAddresses(hostName).Select(i => i.ToString()).ToArray();
}
}
結語
如果有問題或是更好的寫法,
也請你跟我說 ^_^