添加引用:System.Management

  /// <summary>
/// 获取本机的MAC地址
/// </summary>
/// <returns></returns>
public static string GetMACString()
{
ManagementClass mAdapter = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection mo = mAdapter.GetInstances();
foreach (ManagementBaseObject m in mo)
{
if ((bool)m["IpEnabled"] == true)
{
return m["MacAddress"].ToString();
}
}
mo.Dispose();
return null;
} /// <summary>
/// 获取CPU的个数
/// </summary>
/// <returns></returns>
public static int GetCpuCount()
{
try
{
using (ManagementClass mCpu = new ManagementClass("Win32_Processor"))
{
ManagementObjectCollection cpus = mCpu.GetInstances();
return cpus.Count;
}
}
catch
{
}
return -;
} /// <summary>
/// 获取CPU的频率 这里之所以使用string类型的数组,主要是因为cpu的多核
/// </summary>
/// <returns></returns>
public static string[] GetCpuMHZ()
{
ManagementClass mc = new ManagementClass("Win32_Processor");
ManagementObjectCollection cpus = mc.GetInstances(); string[] mHz = new string[cpus.Count];
int c = ;
ManagementObjectSearcher mySearch = new ManagementObjectSearcher("select * from Win32_Processor");
foreach (ManagementObject mo in mySearch.Get())
{
mHz[c] = mo.Properties["CurrentClockSpeed"].Value.ToString();
c++;
}
mc.Dispose();
mySearch.Dispose();
return mHz;
} /// <summary>
/// 获取硬盘的大小
/// </summary>
/// <returns></returns>
public static string GetSizeOfDisk()
{
ManagementClass mc = new ManagementClass("Win32_DiskDrive");
ManagementObjectCollection moj = mc.GetInstances();
foreach (ManagementObject m in moj)
{
return m.Properties["Size"].Value.ToString();
}
return "-1";
} /// <summary>
/// 获取内存的大小
/// </summary>
/// <returns></returns>
public static string GetSizeOfMemery()
{
ManagementClass mc = new ManagementClass("Win32_OperatingSystem");
ManagementObjectCollection moc = mc.GetInstances(); double sizeAll = 0.0;
foreach (ManagementObject m in moc)
{
if (m.Properties["TotalVisibleMemorySize"].Value != null)
{
sizeAll += Convert.ToDouble(m.Properties["TotalVisibleMemorySize"].Value.ToString());
}
}
mc = null;
moc.Dispose(); return sizeAll.ToString();
} /// <summary>
/// 取CPU编号
/// </summary>
/// <returns></returns>
public static String GetCpuID()
{
try
{
ManagementClass mc = new ManagementClass("Win32_Processor");
ManagementObjectCollection moc = mc.GetInstances(); String strCpuID = null;
foreach (ManagementObject mo in moc)
{
strCpuID = mo.Properties["ProcessorId"].Value.ToString();
break;
}
return strCpuID;
}
catch
{
return "";
} }

最新文章

  1. CS0234: 命名空间“System.Web.Mvc”中不存在类型或命名空间名称“Html、Ajax”(是否缺少程序集引用?)
  2. MySQL(四) 数据表的插入、更新、删除数据
  3. atitit. 浏览器插件 控件 applet 的部署,签名总结 浏览器 插件 控件 的签名安全机制o9o
  4. Overview and tips for using STM32F303
  5. 简单dp --- HDU1248寒冰王座
  6. C++类构造函数
  7. Swift初体验(三)
  8. eclipse中使用maven插件的时候,运行run as maven build/clean的时候报错
  9. DMA过程分析
  10. hive新建分区表
  11. 15个HTML元素方法!
  12. 简单封装Redis做缓存
  13. View事件分发
  14. Qt 网格布局
  15. JavaScript实现iphone时钟
  16. [CF1091D]New Year and the Permutation Concatenation
  17. JDBC(6)—BeanUtils
  18. English trip -- Review Unit4 Health 健康
  19. python log封装
  20. H5版如何在微信外(非微信浏览器)进行微信支付技术方案

热门文章

  1. [Gamma]Scrum Meeting#1
  2. Asynchronous method in while loop 构造异步调用链
  3. 【JavaScript】frame跨域访问元素
  4. SVN 从主干合并到分支库
  5. 原生微信小程序脚手架(支持npm)
  6. js 动态加载 jq
  7. laydate.render报错:日期格式不合法
  8. 浅谈 Docker 安全合规建设
  9. mysql 导入txt数据到数据表【原创】
  10. 研发的困境----DEVOPS