当前位置:开发者网络 >> 技术教程 >> .NET教程 >> .NET Framework >> 内容
精彩推荐
分类最新教程
分类热点教程
  
.net中获取机器硬件信息
作者:常青藤
日期:2006-08-15
人气:
投稿:(转贴)
来源:常青藤
字体:
收藏:加入浏览器收藏
以下正文:

最近帮人做个关于软件注册的东东,对方一定要防止大量复制和防止注册码通用,所以就想到用机器的硬件信息进行注册码的生成,所以就牵涉到在获取机器硬件信息。。。

在.net环境下(用VC#描述)获取机器的硬件信息,要用到一个类库(System.Management.dll),在解决方案资源管理器中添加System.Management 即可

我们可以将该程序编译成.dll文件,便于以后调用;

在程序代码中进行引用 using System.Management;

具体 代码为:

1.获取机器名:

 public string GetHostName()
  {
   return System.Net.Dns.GetHostName();
  }

2.获取CPU编号

 public string GetCpuId()

   {

    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;

   }

3.获取主硬盘编号

 public string GetMainHardDiskId()

{

   ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMedia");
    String strHardDiskID = null ;
    foreach(ManagementObject mo in searcher.Get())
    {   
     strHardDiskID = mo["SerialNumber"].ToString().Trim();
     break;         
    }
    return strHardDiskID ;

}

4.获取bios和mac地址,这个有点复杂,需要用到NETAPI32.DLL

相关文章: