社区
Delphi
帖子详情
在DELPHI中怎么取CPU号?谢谢!~~
LOVEJAVA88
2003-09-15 12:50:33
我想做一个对软件加密的算法,需要哇!
问还有其它方法吗?在线等待
...全文
38
3
打赏
收藏
在DELPHI中怎么取CPU号?谢谢!~~
我想做一个对软件加密的算法,需要哇! 问还有其它方法吗?在线等待
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jpyc
2003-09-15
打赏
举报
回复
http://218.56.11.178:8020/web/technology.aspx
-> 下载基地->例程-硬件控制->内存CPU硬盘检测/系统信息检测
roc_fu
2003-09-15
打赏
举报
回复
CPU ID
var
a:array[0..15] of byte;
dword save_edi, save_esi, save_esp, save_ebp, save_ebx;
begin
asm
mov save_edi, EDI
mov save_esi, ESI
mov save_esp, ESP
mov save_ebp, EBP
mov save_ebx, EBX
mov eax,0
DW $A20F
lea esi, a
mov edi, 0
// mov a[0],ebx
mov dword ptr [esi+edi], ebx
add edi, 4
// mov a[4],edx
mov dword ptr [esi+edi], edx
add edi, 4
// mov a[8],ecx
mov dword ptr [esi+edi], ecx
mov ebx, save_ebx
mov ebp, save_ebp
mov esp, save_esp
mov esi, save_esi
mov EDI, save_edi
end;
end;
速度
function GetCPUSpeed: Double;
const
DelayTime = 500;
var
TimerHi, TimerLo: DWORD;
PriorityClass, Priority: Integer;
begin
try
PriorityClass := GetPriorityClass(GetCurrentProcess);
Priority := GetThreadPriority(GetCurrentThread);
SetPriorityClass(GetCurrentProcess, REALTIME_PRIORITY_CLASS);
SetThreadPriority(GetCurrentThread,THREAD_PRIORITY_TIME_CRITICAL);
Sleep(10);
asm
dw 310Fh // rdtsc
mov TimerLo, eax
mov TimerHi, edx
end;
Sleep(DelayTime);
asm
dw 310Fh // rdtsc
sub eax, TimerLo
sbb edx, TimerHi
mov TimerLo, eax
mov TimerHi, edx
end;
SetThreadPriority(GetCurrentThread, Priority);
SetPriorityClass(GetCurrentProcess, PriorityClass);
Result := TimerLo / (1000.0 * DelayTime);
except
Result := 0;
end;
end;
*************
hongqi162
2003-09-15
打赏
举报
回复
结果放在Memo1中。
procedure TForm1.Button1Click(Sender: TObject);
var
systeminfo: SYSTEM_INFO;
memory: MEMORYSTATUS;
sector,byte,cluster,free: DWORD;
freespace,totalspace: longint;
CDtype: UINT;
name: CHAR;
drvname: string;
volname,filesysname: PCHAR;
sno,maxl,fileflag: DWORD;
begin
Memo1.Lines.Clear();
//获得CPU型号
GetSystemInfo(systeminfo);
Memo1.Lines.Add('您的CPU类型是:' + inttostr(systeminfo.dwProcessorType));
//获得内存状态
memory.dwLength := sizeof(memory); //初始化
GlobalMemoryStatus(memory);
Memo1.Lines.Add('您的物理内存是(' + inttostr(integer(memory.dwTotalPhys div 1024 div 1024)) + 'MB)。');
Memo1.Lines.Add('其中可用内存是(' + inttostr(integer(memory.dwTotalPhys div 1024)) + 'KB)。');
//获得C盘可用空间
GetDiskFreeSpace('C:', LPDWORD(@sector)^, LPDWORD(@byte)^, LPDWORD(@free)^, LPDWORD(@cluster)^); //获得返回参数
totalspace := cluster * byte * sector div 1024 div 1024; //计算总容量
freespace := free * byte * sector div 1024 div 1024; //计算可用空间
Memo1.Lines.Add('C盘总空间(' + inttostr(integer(totalspace)) + 'MB)。');
Memo1.Lines.Add('C盘可用空间(' + inttostr(integer(freespace)) + 'MB)。');
//检测CD-ROM,是否有光盘
GetMem(volname, 255);
GetMem(filesysname, 100);
for name :='C' to 'Z' do//循环检测A~Z
begin
drvname := name + ':';
CDtype := GetDriveType(PCHAR(@drvname[1])); //获得磁盘类型
if (CDtype = DRIVE_CDROM) then
begin
Memo1.Lines.Add('您的光驱盘符为[' + drvname + ']');
volname^ := Chr(0);
filesysname^ := Chr(0);
if ( not (GetVolumeInformation(PCHAR(@drvname[1]), volname, 250, LPDWORD(@sno), LPDWORD(@maxl)^, LPDWORD(@fileflag)^, filesysname,100))) then
Memo1.Lines.Add(drvname + '驱中没有发现光盘') //如果返回值为假
else //如果返回值为真
begin
Memo1.Lines.Add (drvname + '驱中光盘卷标为: [' + String(volname) + ']');
Memo1.Lines.Add (drvname + '驱中光盘序号为: [' + inttostr(sno) + ']');
end;
end;
end;
FreeMem(volname);
FreeMem(filesysname)
end;
易语言程序免安装版下载
修改BUG:VCL相关支持库部分组件在修改个别属性或调用个别方法后不可见,并改进了
Delphi
版本的支持库SDK。 15. 修改BUG:高级表格在列类型为数值型时,添加新行且省略标题的情况下,会导致程序异常。 16. 修改BUG...
Delphi
利用注册表和API
取
WIN系统下硬件信息
小弟刚刚接触
Delphi
,写了一个“利用注册表和API
取
WIN系统下硬件信息”程序,此程序在多台机器上测试过,并获得想要的结果,只是小弟的手
中
机型不是很多,可能还有好多机型没有测试过,如果那位对小弟的程序感兴趣的...
Delphi
XE10零基础实战快速入门
通过课堂上一个一个的实战例子,演示
Delphi
XE10的用法,最后通过一个完整的通讯录程序,让学员初步掌握软件开发的全部流程 让零基础学员快速入门
Delphi
编程,快速掌握
Delphi
的使用方法,并能够制作出自己的软件来。...
关于获
取
CPU
温度的CSDN帖子
关于获
取
CPU
温度的CSDN帖子(2008-02-19 13:27:28) 1:各位高手,回句话啊!!
cpu
的温度放在那里了!!有谁知道!! bios里面那个对么??可以通过读bios来得到
cpu
的温度么?? 2:我对这个了解的不多。但是,我看过...
csdn上在
Delphi
中
显示大量数据集的声音
下面是我整理的从search.csdn.net搜索"万条记录
delphi
"的部分记录 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━... 2002-07
Delphi
5,392
社区成员
262,732
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章