C#获取本地计算机名,IP,MAC地址,硬盘ID
using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Management;
public class Computer
{
public string CpuID;
public string MacAddress;
public string DiskID;
public string IpAddress;
public string LoginUserName;
public string ComputerName;
public string SystemType;
public string TotalPhysicalMemory;
private static Computer _instance;
public static Computer Instance ()
{
if (_instance == null )
_instance = new Computer();
return _instance;
}
public Computer ()
{
CpuID = GetCpuID();
MacAddress = GetMacAddress();
DiskID = GetDiskID();
IpAddress = GetIPAddress();
LoginUserName = GetUserName();
SystemType = GetSystemType();
TotalPhysicalMemory = GetTotalPhysicalMemory();
ComputerName = GetComputerName();
}
public string GetCpuID ()
{
try
{
string cpuInfo = "" ;
ManagementClass mc = new ManagementClass("Win32_Processor" );
ManagementObjectCollection moc = mc.GetInstances();
foreach (ManagementObject mo in moc)
{
cpuInfo = mo.Properties["ProcessorId" ].Value.ToString();
}
moc = null ;
mc = null ;
return cpuInfo;
}
catch
{
return "unknow" ;
}
finally
{
}
}
public string GetMacAddress ()
{
try
{
string mac = "" ;
ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration" );
ManagementObjectCollection moc = mc.GetInstances();
foreach (ManagementObject mo in moc)
{
if ((bool )mo["IPEnabled" ] == true )
{
mac = mo["MacAddress" ].ToString();
break ;
}
}
moc = null ;
mc = null ;
return mac;
}
catch
{
return "unknow" ;
}
finally
{
}
}
public string GetIPAddress ()
{
try
{
string st = "" ;
ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration" );
ManagementObjectCollection moc = mc.GetInstances();
foreach (ManagementObject mo in moc)
{
if ((bool )mo["IPEnabled" ] == true )
{
System.Array ar;
ar = (System.Array)(mo.Properties["IpAddress" ].Value);
st = ar.GetValue(0 ).ToString();
break ;
}
}
moc = null ;
mc = null ;
return st;
}
catch
{
return "unknow" ;
}
finally
{
}
}
public string GetDiskID ()
{
try
{
String HDid = "" ;
ManagementClass mc = new ManagementClass("Win32_DiskDrive" );
ManagementObjectCollection moc = mc.GetInstances();
foreach (ManagementObject mo in moc)
{
HDid = (string )mo.Properties["Model" ].Value;
}
moc = null ;
mc = null ;
return HDid;
}
catch
{
return "unknow" ;
}
finally
{
}
}
public string GetUserName ()
{
try
{
string st = "" ;
ManagementClass mc = new ManagementClass("Win32_ComputerSystem" );
ManagementObjectCollection moc = mc.GetInstances();
foreach (ManagementObject mo in moc)
{
st = mo["UserName" ].ToString();
}
moc = null ;
mc = null ;
return st;
}
catch
{
return "unknow" ;
}
finally
{
}
}
public string GetSystemType ()
{
try
{
string st = "" ;
ManagementClass mc = new ManagementClass("Win32_ComputerSystem" );
ManagementObjectCollection moc = mc.GetInstances();
foreach (ManagementObject mo in moc)
{
st = mo["SystemType" ].ToString();
}
moc = null ;
mc = null ;
return st;
}
catch
{
return "unknow" ;
}
finally
{
}
}
public string GetTotalPhysicalMemory ()
{
try
{
string st = "" ;
ManagementClass mc = new ManagementClass("Win32_ComputerSystem" );
ManagementObjectCollection moc = mc.GetInstances();
foreach (ManagementObject mo in moc)
{
st = mo["TotalPhysicalMemory" ].ToString();
}
moc = null ;
mc = null ;
return st;
}
catch
{
return "unknow" ;
}
finally
{
}
}
public string GetComputerName ()
{
try
{
return System.Environment.GetEnvironmentVariable("ComputerName" );
}
catch
{
return "unknow" ;
}
finally
{
}
}
}