获得硬盘ID(序列号、机器码)的C++代码源码

本篇文章属于《518抽奖软件开发日志》系列文章的一部分。

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

MasterHardDiskSerial mhds;

mhds.getHardDriveComputerID();

char* p = mhds.m_cszHardDriveSerialNumber;

hashcode = Tfuns::ELFHash((unsigned char*)p, strlen(p));

unsigned int diskid = hashcode % 1000;

MasterHardDiskSerial 这个类的源码,可以到github搜索得到,路径如下

https://github.com/haephrati/get-hardware-id/tree/master/GetMacAddress_by_Michael_Haephrati

其中的HardDriveSerialNumer.h、HardDriveSerialNumer.cpp两个文件。

获得的序列号可能很长的,为了便于采用先hash到一个整数,然后取整数的后四位!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值