| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 374 人关注过本帖
标题:获得CPU-ID(序列号、机器码)的C++代码源码
只看楼主 加入收藏
wsgsoft
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2019-12-9
收藏
 问题点数:0 回复次数:0 
获得CPU-ID(序列号、机器码)的C++代码源码
本篇文章属于《518抽奖软件开发日志》系列文章的一部分。

我在开发《518抽奖软件》(www.)的时候,在软件的注册部分,需要获得CPU的序列号(ID/机器码)。在网上找了一些代码,很多不好用,最后选了下面的一个,并经过自己的优化测试。

    unsigned long a = 0;
    unsigned long d = 0;
    __asm
    {
        mov eax, 01h
        xor edx, edx
        cpuid
        mov d, edx
        mov a, eax
    };

    char s[256] = { 0 };
    sprintf(s, "%08X%08X", d, a);
    unsigned int hashcode = Tfuns::ELFHash((unsigned char*)s, strlen(s));
    unsigned int cpuid = hashcode % 1000;

主要通过上面的汇编指令,然后经过hash运算可以缩小序列号的长度。

搜索更多相关主题的帖子: 序列号 机器码 unsigned 获得 代码 
2023-09-13 14:32
快速回复:获得CPU-ID(序列号、机器码)的C++代码源码
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.031408 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved