做商业软件,难免需要绑定硬件号!绑定硬盘序列号,网卡序列号?但这序列号都可以更改!唯一CPU序列号是不可更改的,所以我采取获取CPU序列号的形式来做授权。这样可以很大程度限制修改序列号的方式来破解!
function TBeiAn.getCpuid : string; var _eax, _ebx, _ecx, _edx: Longword; s, s1, s2: string; begin asm push eax push ebx push ecx push edx mov eax,1 db $0F,$A2 mov _eax,eax mov _ebx,ebx mov _ecx,ecx mov _edx,edx pop edx pop ecx pop ebx pop eax end; s := IntToHex(_eax, 8); s1 := IntToHex(_edx, 8); s2 := IntToHex(_ecx, 8); result:=s+s1+s2; end;
调用方法:
getCpuid;
标签:delphi
发表评论