根据MAC地址生成软件的序列号

来源:互联网 发布:网络交换器 编辑:程序博客网 时间:2024/05/16 23:51

下面是一个简单的生成liense的方法,通过机器的MAC地址,生成一个序列号。

#include "stdafx.h"#include <stdio.h>#include<iostream>using namespace std;
/*///////////////////////////////////// MAC: 45:b5:64:d3:53:7a//        \ \       / ///              x//        / /       \ \//p[i]: 7a 53 d3 64 b5 45 00 00//   i:  0  1  2  3  4  5  6  7printf("0x%016I64x\n",macnum);//         ||||||^---按十六进制小写abcdef输出//         |||^^^----__int64类型的数//         |^^-------宽度16//         ^---------左边补0printf("%I64u\n",macnum);//          ^--------按unsigned类型输出//       ^^^---------__int64类型的数*///////////////////////////////////////

__int64 getMacNum(string strMAC){__int64 macnum;p=(unsigned char *)&macnum;p[6]=0;p[7]=0;int i,v;unsigned char *p;char MAC[17];for(i=0;i<17;i++){MAC[i] = strMAC[i];}for (i=0;i<6;i++) {sscanf(MAC+i*3,"%2x",&v);p[5-i]=(unsigned char)v;}return macnum;}
int _tmain(int argc, _TCHAR* argv[]){string strMAC = "44-8A-5B-BF-81-23";__int64 intMac = getMacNum(strMAC);return 0;}


阅读全文
0 0