如何正确地取得 cpu,主板 序列号?(100分)

  • 主题发起人 主题发起人 nhmichael
  • 开始时间 开始时间
N

nhmichael

Unregistered / Unconfirmed
GUEST, unregistred user!
前面已经有人提过这个问题,但我看了,好象都不能很好地解决问题,各位有无更准确的编程方法?
 
我想知道.
 
用api 函数 GetLocaleInfo 不行吗?<br>我想应该有这样的函数, 否则, 只能是对端口操作, <br>自己去取了.
 
还有一个绝对管用的办法<br>&nbsp; 扒开机子看一看:&amp;
 
不用扒开看。启动时就有这些信息。
 
&gt;&gt;i want to learn too.:)
 
//cpu id 的获取<br>TCPUIDARRAY=array[1..4] of Longint;<br>function GetCPUID : TCPUIDARRAY; assembler;register;<br>asm<br>&nbsp; PUSH &nbsp; &nbsp;EBX &nbsp; &nbsp; &nbsp; &nbsp; {Save affected register}<br>&nbsp; PUSH &nbsp; &nbsp;EDI<br>&nbsp; MOV &nbsp; &nbsp; EDI,EAX &nbsp; &nbsp; {@Resukt}<br>&nbsp; MOV &nbsp; &nbsp; EAX,1<br>&nbsp; DW &nbsp; &nbsp; &nbsp;$A20F &nbsp; &nbsp; &nbsp; {CPUID Command}<br>&nbsp; STOSD {CPUID[1]}<br>&nbsp; MOV &nbsp; &nbsp; EAX,EBX<br>&nbsp; STOSD &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {CPUID[2]}<br>&nbsp; MOV &nbsp; &nbsp; EAX,ECX<br>&nbsp; STOSD &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {CPUID[3]}<br>&nbsp; MOV &nbsp; &nbsp; EAX,EDX<br>&nbsp; STOSD &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; {CPUID[4]}<br>&nbsp; POP &nbsp; &nbsp; EDI {Restore registers}<br>&nbsp; POP &nbsp; &nbsp; EBXend;
 
还是walkdan 高人一等!!<br>佩服
 
2 张国龙:<br>太大惊小怪了吧!<br>这段代码在李颖的TDBBackup包里也有,CPUID.pas<br>我问李颖,他也是从网上搜罗来的<br><br>至于主板的序列号,<br>就好象要取键盘、鼠标、显示器、机箱、电源、<br>办公桌、经理、老板的序列号一样,<br>我觉得似乎不太可能<br><br>谁有高招?请指教~~<br>
 
// get BIOS ID<br>function GetMachineID:word;assembler;<br>asm<br>&nbsp; xor ax,ax<br>&nbsp; dec ax<br>&nbsp; mov es,ax<br>&nbsp; mov ax,word ptr es:[$0e] {return}<br>end;
 
我用walkdan 的方法,运行时会出错,可能是我用的是delphi 5 ,windows 2000的关系?walkdan 你要是能解决这个问题,我再给你100 分!
 
主板有序列号,windows可以识别出来,我曾经在windows的一个文件中看到过,有的<br>测试软件也可以得到,不知如何实现的。<br>Walkdan的Get Bios ID程序只能在Dos下运行。
 
walkdan:请问你用asm写的代码,如何在Delphi中表示?<br>还有,我想把CPU的系列号返回给一个字符串,怎么办?<br>谢谢!
 
&gt;&gt;walkdan:请问你用asm写的代码,如何在Delphi中表示?<br>他写的就是把汇编嵌在Delphi中的代码呀!
 
解决了!<br>谢谢!
 
不幸,我发现有许多机子的 cpuid 是相同的 cpuid.pas 是不是有问题呀?<br>那简直是一定的! &nbsp; <br><br><br>0000 0660 0000 0000 0000 0000 0183 F9FF
 
cpuis.pas中的说明只对pIII上的CPU有效
 
关注,关注,关注,关注
 
用 BBWININFO.
 
我也有取CPUID的程序,如果有主板等其它的序列号,请别忘了我一份!作加密<br>很有用喔!
 

Similar threads

回复
0
查看
848
不得闲
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部