作者: 乔克斯
查看: 4314|回复: 2
打印 上一主题 下一主题

[源码] 【生成机器码】C# 读取机器码,CPU序列号

[复制链接]
跳转到指定楼层
楼主
乔克斯 发表于 2015-10-6 13:03:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
查看: 4314|回复: 2
说明:
很多情况下我们需要获取用户机器的机器码作为授权的唯一标示,以下代码即可获取所需的机器码。

所有代码:
[C#] 纯文本查看 复制代码
    /// <summary>
    /// 机器码
    /// </summary>
   public class MachineCode
    {
        ///   <summary> 
        ///   获取cpu序列号     
        ///   </summary> 
        ///   <returns> string </returns> 
        public string GetCpuInfo()
        {
            string cpuInfo = " ";
            using (ManagementClass cimobject = new ManagementClass("Win32_Processor"))
            {
                ManagementObjectCollection moc = cimobject.GetInstances();

                foreach (ManagementObject mo in moc)
                {
                    cpuInfo = mo.Properties["ProcessorId"].Value.ToString();
                    mo.Dispose();
                }
            }
            return cpuInfo.ToString();
        }

        ///   <summary> 
        ///   获取硬盘ID     
        ///   </summary> 
        ///   <returns> string </returns> 
        public string GetHDid()
        {
            string HDid = " ";
            using (ManagementClass cimobject1 = new ManagementClass("Win32_DiskDrive"))
            {
                ManagementObjectCollection moc1 = cimobject1.GetInstances();
                foreach (ManagementObject mo in moc1)
                {
                    HDid = (string)mo.Properties["Model"].Value;
                    mo.Dispose();
                }
            }
            return HDid.ToString();
        }

        ///   <summary> 
        ///   获取网卡硬件地址 
        ///   </summary> 
        ///   <returns> string </returns> 
        public string GetMoAddress()
        {
            string MoAddress = " ";
            using (ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration"))
            {
                ManagementObjectCollection moc2 = mc.GetInstances();
                foreach (ManagementObject mo in moc2)
                {
                    if ((bool)mo["IPEnabled"] == true)
                        MoAddress = mo["MacAddress"].ToString();
                    mo.Dispose();
                }
            }
            return MoAddress.ToString();
        }
    }

评分

参与人数 1金钱 +1 收起 理由
不同的世界 + 1 感谢分享,LZ辛苦了~

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏9 转播转播
回复 论坛版权

使用道具 举报

沙发
忧郁之子 发表于 2015-10-8 21:10:14 | 只看该作者
谢谢分享,支持了。
板凳
gts 发表于 2016-9-26 01:50:41 | 只看该作者
多谢代码,支持!
您需要登录后才可以回帖 登录 | 加入CSkin博客

本版积分规则

QQ|申请友链|小黑屋|手机版|Archiver|CSkin ( 粤ICP备13070794号

Powered by Discuz! X3.2  © 2001-2013 Comsenz Inc.  Designed by ARTERY.cn
GMT+8, 2024-4-27 16:23, Processed in 0.729820 second(s), 35 queries , Gzip On.

快速回复 返回顶部 返回列表