c# 获得cpu,硬盘的物理序列号
来源:网络来源TAG:cpu  硬盘  浏览数: 日期:2010-8-13评论:
折叠C# Code复制内容到剪贴板
  1. using system;   
  2.   
  3.   using system.runtime.interopservices;   
  4.   
  5.   using  system.management;   
  6.   
  7.   namespace hardware   
  8.   
  9.   {   
  10.   
  11.   /// <summary>   
  12.   
  13.   /// hardware_mac 的摘要说明。   
  14.   
  15.   /// </summary>   
  16.   
  17.   public class hardwareinfo   
  18.   
  19.   {   
  20.   
  21.   //取机器名   
  22.   
  23.   public string gethostname()   
  24.   
  25.   {   
  26.   
  27.   return system.net.dns.gethostname();   
  28.   
  29.   }   
  30.   
  31.   //取cpu编号   
  32.   
  33.   public string getcpuid()   
  34.   
  35.   {   
  36.   
  37.   try  
  38.   
  39.   {   
  40.   
  41.   managementclass mc = new managementclass("win32_processor");   
  42.   
  43.   managementobjectcollection moc = mc.getinstances();   
  44.   
  45.   string strcpuid = null ;   
  46.   
  47.   foreach( managementobject mo in moc )   
  48.   
  49.   {   
  50.   
  51.   strcpuid = mo.properties["processorid"].value.tostring();   
  52.   
  53.   break;   
  54.   
  55.   }   
  56.   
  57.   return strcpuid;   
  58.   
  59.   }   
  60.   
  61.   catch  
  62.   
  63.   {   
  64.   
  65.   return "";   
  66.   
  67.   }   
  68.   
  69.   }//end method   
  70.   
  71.   //获取cpu序列号   
  72.   
  73.   public string getcpuid2()   
  74.   
  75.   {   
  76.   
  77.   try  
  78.   
  79.   {   
  80.   
  81.   System.Management.ManagementObjectSearcher   Wmi   =   new   ManagementObjectSearcher                             ( "SELECT   *   FROM   Win32_Processor ");   
  82.   
  83.   string   tmpUint32_1   =   string.Empty;   
  84.   
  85.   foreach(ManagementObject   WmiObj   in   Wmi.Get())   
  86.   
  87.   {   
  88.   
  89.   tmpUint32_1   =WmiObj[ "ProcessorId "].ToString();   
  90.   
  91.   }   
  92.   
  93.   this.textBox2.Text   =   tmpUint32_1;   
  94.   
  95.   this.gProgressBar1.Value   ++;   
  96.   
  97.   }   
  98.   
  99.   catch(Exception   ex2)   
  100.   
  101.   {   
  102.   
  103.   throw   new   Exception(ex2.ToString());   
  104.   
  105.   }   
  106.   
  107.   }   
  108.   
  109.   //取第一块硬盘编号   
  110.   
  111.   public string getharddiskid()   
  112.   
  113.   {   
  114.   
  115.   try  
  116.   
  117.   {   
  118.   
  119.   managementobjectsearcher searcher = new managementobjectsearcher("select * from win32_physicalmedia");   
  120.   
  121.   string strharddiskid = null ;   
  122.   
  123.   foreach(managementobject mo in searcher.get())   
  124.   
  125.   {   
  126.   
  127.   strharddiskid = mo["serialnumber"].tostring().trim();   
  128.   
  129.   break;   
  130.   
  131.   }   
  132.   
  133.   return strharddiskid ;   
  134.   
  135.   }   
  136.   
  137.   catch  
  138.   
  139.   {   
  140.   
  141.   return "";   
  142.   
  143.   }   
  144.   
  145.   }//end   
  146. //获取磁盘序列号   
  147.   
  148.   public string getharddiskid2()   
  149.   
  150.   {   
  151.   
  152.   try  
  153.   
  154.   {   
  155.   
  156.   System.Management.ManagementObjectSearcher   cmicWmi   =   new                                      ManagementObjectSearcher( "SELECT   *   FROM   Win32_DiskDrive ");   
  157.   
  158.   System.UInt32   tmpUint32   =   0;   
  159.   
  160.   foreach(ManagementObject   cmicWmiObj   in   cmicWmi.Get())   
  161.   
  162.   {   
  163.   
  164.   tmpUint32   =   Convert.ToUInt32(cmicWmiObj[ "signature "].ToString());   
  165.   
  166.   }   
  167.   
  168.   this.textBox1.Text   =   tmpUint32.ToString();   
  169.   
  170.   this.gProgressBar1.Value   ++;   
  171.   
  172.   }   
  173.   
  174.   catch(Exception   ex1)   
  175.   
  176.   {   
  177.   
  178.   throw   new   Exception(ex1.ToString());   
  179.   
  180.   }   
  181.   
  182.   }   
  183.   
  184.   ///   <summary>   
  185.   
  186.   ///   获取硬盘ID   
  187.   
  188.   ///   </summary>   
  189.   
  190.   ///   <returns> string </returns>   
  191.   
  192.   public string GetHDid()   
  193.   
  194.   {   
  195.   
  196.   string HDid = " ";   
  197.   
  198.   using (ManagementClass cimobject1 = new ManagementClass("Win32_DiskDrive"))   
  199.   
  200.   {   
  201.   
  202.   ManagementObjectCollection moc1 = cimobject1.GetInstances();   
  203.   
  204.   foreach (ManagementObject mo in moc1)   
  205.   
  206.   {   
  207.   
  208.   HDid = (string)mo.Properties["Model"].Value;   
  209.   
  210.   mo.Dispose();   
  211.   
  212.   }   
  213.   
  214.   }   
  215.   
  216.   return HDid.ToString();   
  217.   
  218.   }   
  219.   
  220.   ///   <summary>   
  221.   
  222.   ///   获取网卡硬件地址   
  223.   
  224.   ///   </summary>   
  225.   
  226.   ///   <returns> string </returns>   
  227.   
  228.   public string GetMoAddress()   
  229.   
  230.   {   
  231.   
  232.   string MoAddress = " ";   
  233.   
  234.   using (ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration"))   
  235.   
  236.   {   
  237.   
  238.   ManagementObjectCollection moc2 = mc.GetInstances();   
  239.   
  240.   foreach (ManagementObject mo in moc2)   
  241.   
  242.   {   
  243.   
  244.   if ((bool)mo["IPEnabled"] == true)   
  245.   
  246.   MoAddress = mo["MacAddress"].ToString();   
  247.   
  248.   mo.Dispose();   
  249.   
  250.   }   
  251.   
  252.   }   
  253.   
  254.   return MoAddress.ToString();   
  255.   
  256.   }   
  257.   
  258.   }   
  259.   
  260.   }  
昨天新闻点击排行
一周新闻点击排行
当月新闻点击排行
新闻链接
上一篇文章:c# 连接access操作类
相关评论
正在加载评论列表...
评论表单加载中...