--

1.cpu序列号2.mac序列号3.硬盘id
在给软件加序列号时这三个应该是最有用的,可以实现序列号和机器绑定,对保护软件很有好处.哈哈.
using System;
using System.Management; /// Computer Information public class Computer { public string CpuID; //1.cpu序列号public string MacAddress; //2.mac序列号public string DiskID; //3.硬盘idpublic string IpAddress; //4.ip地址public string LoginUserName; //5.登录用户名public string ComputerName; //6.计算机名public string SystemType; //7.系统类型public string TotalPhysicalMemory; //8.内存量 单位:Mpublic  Computer() { CpuID = GetCpuID(); MacAddress = GetMacAddress(); DiskID = GetDiskID(); IpAddress = GetIPAddress(); LoginUserName = GetUserName(); SystemType = GetSystemType(); TotalPhysicalMemory = GetTotalPhysicalMemory(); ComputerName = GetComputerName(); }//1.获取CPU序列号代码 string GetCpuID() { try { string cpuInfo = "";//cpu序列号 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 { } }//2.获取网卡硬件地址 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 { } }//3.获取硬盘ID 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 { } }//4.获取IP地址 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) { //st=mo["IpAddress"].ToString();
                        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 { } } /// 5.操作系统的登录用户名 string GetUserName() { try { string un= "";st = Environment.UserName;return un; } catch { return "unknow"; } finally { } } //6.获取计算机名string GetComputerName() { try { return System.Environment.MachineName;} catch { return "unknow"; } finally { } }///7 PC类型 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 { } } catch { return "unknow"; } finally { } } /// 8.物理内存 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; }
}

转载于:https://www.cnblogs.com/htwzl/articles/7289488.html

C# 中获取CPU序列号/网卡mac地址相关推荐

  1. C# 获取CPU序列号、MAC地址、硬盘ID等系统信息

    软件开发过程中经常需要获取 CPU 序列号.MAC 序列号或者硬盘 ID 等系统信息,在给软件加序列号时这三个应该是最有用的,可以实现序列号和机器绑定,用于保护软件.下面看一下使用 C# 如何获取. ...

  2. 用C#获取硬盘序列号,CPU序列号,网卡MAC地址

    这个问题首先得考虑的就是你的硬盘是不是SCSI硬盘 如果是,那么根本不存在"物理序列号",只可能取得卷标的序列号 如果是卷标序列号,要注意的是每次格式化硬盘的时候这个序列号都会变 ...

  3. 获取CPU序列号和MAC地址

    获取序列号 void GetMac_SN() { char strID[MAX_PATH]; unsigned long s1,s2; __asm { mov eax,0x01 xor edx,edx ...

  4. android 获取网卡mac_android获取网卡mac地址信息

    由于android版本不一样获取网卡mac地址的方式也不一样,比较麻烦,但是java sdk里面的函数是可以获取里面的网卡内容. 代码如下: /** * 获取网络的mac地址 * * @return ...

  5. 游戏封网卡mac地址后修改网卡mac地址

    MAC地址,也就是网卡,对于单网卡来说是唯一的(64位)十六进值的物理地址,它是在出前厂就已经分配好了的. 每一个物理设备都有一个唯一对应的MAC地址,MAC地址绑定IP地址,是网络管理常用的一种方式 ...

  6. 通过WMI获取网卡MAC地址、硬盘序列号、主板序列号、CPU ID、BIOS序列号

    开发语言:C/C++ 支持平台:Windows 实现功能: 通过WMI获取网卡MAC地址.硬盘序列号.主板序列号.CPU ID.BIOS序列号 下载地址: WMI_DeviceQuery.zip 版本 ...

  7. Python获取电脑硬件配置的封装类,可以获取CPU序列号、主板序列号、BIOS序列号、硬盘序列号和网卡MAC地址

    Python获取电脑硬件配置的封装类,可以获取CPU序列号.主板序列号.BIOS序列号.硬盘序列号和网卡MAC地址. myPyHardware.py # -*- coding: utf-8 -*- i ...

  8. C# 获取CPU序列号、网卡MAC地址、硬盘序列号封装类,用于软件绑定电脑

    /// <summary> /// hardware_mac 的摘要说明. /// </summary> class HardwareInfo { /// <summar ...

  9. python wmi读取网卡MAC地址、CPU序列号、硬盘序列号、主板序列号、BIOS序列号

    序列号相当于电脑的身份证号,是硬件出厂时,厂商写在硬件里的唯一识别码,具有唯一性和不可修改性.很多正版软件以此来识别用户电脑,限制安装. import uuid import wmi def get_ ...

最新文章

  1. TypeError: showInformation() missing 1 required positional argument: ‘self‘
  2. 深入分析ReentrantLock公平锁和非公平锁的区别 (转)
  3. G4Sui老师的pair project(197)
  4. 012_Vue计算属性
  5. EDGE X Kubernetes Meetup·杭州站:云原生在边缘的实践与应用
  6. 高级Lucene查询示例
  7. java客户端重复请求_Java后台防止客户端重复请求、提交表单实现原理
  8. java水印图片_JAVA实用案例之图片水印开发
  9. OpenCV 2.4.8 or OpenCV 2.4.9组件结构全解析
  10. 【面试】最容易被问到的N种排序算法!
  11. 信息抽取 | 72篇论文梳理:涉及NER、复杂关系、小样本、文档级、多模态、开放域抽取...
  12. cpu的用户态和内核态和内存的用户空间内核空间
  13. MS CRM 2011 Q2的一些更新
  14. OFD发票无法打开了
  15. 有关“安装程序启动安装引擎失败:不支持此接口”错误的解决方法
  16. MapReduce算法(将数据按照 /OutputData/城市名称/日期(YYYY-MM-dd)/类型(固定Gn)/imsi.txt )
  17. 数据库 和 数据仓库
  18. 夜天之书 #78 共建的神话
  19. Linux运行python文件出现以下错误:terminate called after throwing an instance of ‘std::runtime_error‘
  20. 8. 面向对象 -- 继承

热门文章

  1. 2013年第10周三低潮
  2. 关于算法中的并查集,写的很有意思,转过来看看~
  3. 反编译插件jadclips
  4. springboot配置Druid数据源
  5. PostgreSQL 10.1 手册_部分 II. SQL 语言_第 8 章 数据类型_8.10. 位串类型
  6. OpenGL 纹理学习总结
  7. dubbo服务调试管理实用命令
  8. NDK 高级编程(笔记)
  9. 实验mongodb使用gridfs存放一个大文件
  10. Hanoi塔(分治法的应用)