public class SystemInfo
{
属性#region 属性
OS名称#region OS名称
string strOSName = string.Empty; //OS名称
public string OSName
{
get { return strOSName; }
set { strOSName = value; }
}
#endregion
OS版本#region OS版本
string strOSVersion = string.Empty; //OS版本
public string OSVersion
{
get { return strOSVersion; }
set { strOSVersion = value; }
}
#endregion
OS制造商#region OS制造商
string strOSManufacturer = string.Empty; //OS制造商
public string OSManufacturer
{
get { return strOSManufacturer; }
set { strOSManufacturer = value; }
}
#endregion
Windows 目录#region Windows 目录
string strWindowsDirectory = string.Empty;
public string WindowsDirectory
{
get { return strWindowsDirectory; }
set { strWindowsDirectory = value; }
}
#endregion
系统目录#region 系统目录
string strSystemDirectory = string.Empty; //系统目录
public string SystemDirectory
{
get { return strSystemDirectory; }
set { strSystemDirectory = value; }
}
#endregion
启动设备#region 启动设备
string strBootDevice = string.Empty; //启动设备
public string BootDevice
{
get { return strBootDevice; }
set { strBootDevice = value; }
}
#endregion
地区#region 地区
string strCountry = string.Empty; //地区
public string Country
{
get { return strCountry; }
set { strCountry = value; }
}
#endregion
时区#region 时区
string strTimeZone = string.Empty; //时区
public string TimeZone
{
get { return strTimeZone; }
set { strTimeZone = value; }
}
#endregion
总的物理内存#region 总的物理内存
string strTotalVisibleMemorySize = string.Empty; //总的物理内存
public string TotalVisibleMemorySize
{
get { return strTotalVisibleMemorySize; }
set { strTotalVisibleMemorySize = value; }
}
#endregion
可用物理内存#region 可用物理内存
string strFreePhysicalMemory = string.Empty; //可用物理内存
public string FreePhysicalMemory
{
get { return strFreePhysicalMemory; }
set { strFreePhysicalMemory = value; }
}
#endregion
总的虚拟内存#region 总的虚拟内存
string strTotalVirtualMemorySize = string.Empty; //总的虚拟内存
public string TotalVirtualMemorySize
{
get { return strTotalVirtualMemorySize; }
set { strTotalVirtualMemorySize = value; }
}
#endregion
可用虚拟内存#region 可用虚拟内存
string strFreeVirtualMemory = string.Empty; //可用虚拟内存
public string FreeVirtualMemory
{
get { return strFreeVirtualMemory; }
set { strFreeVirtualMemory = value; }
}
#endregion
页面文件大小#region 页面文件大小
string strSizeStoredInPagingFiles = string.Empty; //页面文件大小
public string SizeStoredInPagingFiles
{
get { return strSizeStoredInPagingFiles; }
set { strSizeStoredInPagingFiles = value; }
}
#endregion
#endregion
构造函数#region 构造函数
public SystemInfo()
{
GetSystemInfo();
}
#endregion
GetSystemInfo#region GetSystemInfo
private void GetSystemInfo()
{
OSVersion = Environment.OSVersion.ToString(); //通过系统自带的Environment这个类来获取 系统的版本
SystemName = Environment.MachineName; //通过系统自带的Environment这个类来获取 系统的名称
Country = System.Globalization.CultureInfo.CurrentCulture.DisplayName; //获取区域设置
TimeZone = System.TimeZone.CurrentTimeZone.StandardName; //获取时区设置
//实例化一个ManagementClass类,并将Win32_OperatingSystem作为参数传递进去,
//这样就可以查询Win32_OperatingSystem这个类里面的一些信息了。
ManagementClass mClass = new ManagementClass("Win32_OperatingSystem");
//获取Win32_OperatingSystem这个类的所有实例
ManagementObjectCollection moCollection = mClass.GetInstances();
//对Win32_OperatingSystem这个类进行遍历
foreach (ManagementObject mObject in moCollection)
{
OSName = mObject["Caption"].ToString(); //获取OS 名称
OSManufacturer = mObject["Manufacturer"].ToString(); //获取 OS 制造商
SystemName = mObject["CSName"].ToString(); //获取系统名称
WindowsDirectory = mObject["WindowsDirectory"].ToString(); //获取Windows 目录
SystemDirectory = mObject["SystemDirectory"].ToString(); //获取系统目录
BootDevice = mObject["BootDevice"].ToString(); //获取启动设备
TotalVisibleMemorySize = ((ulong)mObject["TotalVisibleMemorySize"] / 1024.0 / 1024).ToString("#0.00") "G"; //获取总的物理内存
FreePhysicalMemory = ((ulong)mObject["FreePhysicalMemory"] / 1024.0 / 1024).ToString("#0.00") "G"; //获取可用物理内存
TotalVirtualMemorySize = ((ulong)mObject["TotalVirtualMemorySize"] / 1024.0 / 1024).ToString("#0.00") "G"; //获取总的虚拟内存
FreeVirtualMemory = ((ulong)mObject["FreeVirtualMemory"] / 1024.0 / 1024).ToString("#0.00") "G"; //获取可用虚拟内存
SizeStoredInPagingFiles = ((ulong)mObject["SizeStoredInPagingFiles"] / 1024.0 / 1024).ToString("#0.00") "G"; //获取页面文件大小
}
}
#endregion
}
再启动一个VS2008 创建一个解决方案命名为:HostPerformance,添加上面那个类库的引用,如下图