得到CPU序列号(100)

  • 主题发起人 xibaixin
  • 开始时间
X

xibaixin

Unregistered / Unconfirmed
GUEST, unregistred user!
得到CPU序列号。网上我找了一大堆,好像都不行,请作过的朋友给些代码,最好有详细的说明。先谢了。
 
我用硬盘号的,要不要啊
 
CPU序列号可能取不到了
 
好象是P3开始有这个东东,后来废除了吧
 
我有!加我QQ:290980532!
 
CPU序列号可以取道的,如果是多CPU的则要进行相应判断的!
 
//取CPU序号Function kbGetCpuID():string;type TCPUID = array[1..4] of Longint;var CPUIDinfo : TCPUID; function IsCPUID_Available : Boolean; asm PUSHFD {direct access to flags no possible, only via stack} POP EAX {flags to EAX} MOV EDX,EAX {save current flags} XOR EAX,$200000; {not ID bit} PUSH EAX {onto stack} POPFD {from stack to flags, with not ID bit} PUSHFD {back to stack} POP EAX {get back to EAX} XOR EAX,EDX {check if ID bit affected} JZ @exit {no, CPUID not availavle} MOV AL,True {Result=True} @exit: end; function GetCPUIDSN : TCPUID; assembler; asm PUSH EBX {Save affected register} PUSH EDI MOV EDI,EAX {@Resukt} MOV EAX,1 DW $A20F {CPUID Command} STOSD {CPUID[1]} MOV EAX,EBX STOSD {CPUID[2]} MOV EAX,ECX STOSD {CPUID[3]} MOV EAX,EDX STOSD {CPUID[4]} POP EDI {Restore registers} POP EBX end;begin if IsCPUID_Available then begin CPUIDinfo:=GetCPUIDSN; end else begin //早期cpu无ID CPUIDinfo[1] := 0136; CPUIDinfo[4] := 66263155; Result := ''; end; result:=IntToHex((CPUIDinfo[1]+CPUIDinfo[2]+CPUIDinfo[3]+CPUIDinfo[4]),8);end;
 
换个办法吧,据我所知,所谓CPU序列号都不是唯一的。
 

Similar threads

回复
0
查看
459
不得闲
回复
0
查看
858
不得闲
回复
0
查看
668
不得闲
顶部