Delphi通过汇编获取CPUID
2013-01-17 21:21
169 查看
据说CPUID不唯一,同一个系列的CPU其CPUID相同?没研究清楚。
做这个的最初是想做个根据机器码生成注册码的一个注册应用程序,所以找到了这个方法:还不错,分享一下:
当然需要声明这样一个类型:
完整的代码就暂时不贴出来了,等完成了一起整到下载吧。有想看的可以联系我O(∩_∩)O
共同学习,共同成长
做这个的最初是想做个根据机器码生成注册码的一个注册应用程序,所以找到了这个方法:还不错,分享一下:
function GetCPUID: TCPUID; assembler; register; 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;
function TRegisterFrm.GetComputerSeries: string; var I: Integer; nNum: Longint; CPUID: TCPUID; begin Result := ''; CPUID := GetCPUID; Result := IntToHex(CPUID[1] , 8) + IntToHex(CPUID[2] , 8) + IntToHex(CPUID[3] , 8) + IntToHex(CPUID[4] , 8); end;
当然需要声明这样一个类型:
type TCPUID = array[1..4] of Longint; TVendor = array [0..11] of char; function GetCPUID: TCPUID; assembler; register;
完整的代码就暂时不贴出来了,等完成了一起整到下载吧。有想看的可以联系我O(∩_∩)O
共同学习,共同成长
相关文章推荐
- Delphi获取汉字首字母(D2009测试通过)
- 在VC++通过汇编实现获取代码运行时间
- Delphi通过IE窗口句柄获取网页接口(IWebBrowser2) good
- 获取硬件信息的delphi源码(CPUID、操作系统、Mac物理地址、计算机名称、IP地址、用户名)
- 通过CPUid获取CPU信息
- 汇编(指令cpuid)获取cpu信息
- 通过cpuid指令获取CPU Verdor ID
- 通过CPUID指令获取CPU信息
- Delphi通过Get获取来自PHP的返回值
- Delphi~通过程序窗体句柄获取程序路径
- 在DELPHI中通过获取计算机一系列硬件信息
- Delphi通过IE窗口句柄获取网页接口(IWebBrowser2)
- Delphi枚举类型通过下标获取类型和通过类型获取下标方法
- Delphi 获取CPUID和制造商
- Delphi通过管道执行外部命令行程序(cmd)并获取返回结果
- Delphi通过Get获取来自PHP的返回值
- Delphi中通过TClientSocket获取公网(WAN)IP地址
- delphi 通过点击获取控件名称
- Delphi~通过程序窗体句柄获取程序路径
- 在Delphi中通过函数获取GUID