大雀软件园

首页 软件下载 安卓市场 苹果市场 电脑游戏 安卓游戏 文章资讯 驱动下载
技术开发 网页设计 图形图象 数据库 网络媒体 网络安全 站长CLUB 操作系统 媒体动画 安卓相关
当前位置: 首页 -> 技术开发 -> 程序开发 -> 几个获取Windows系统信息的Delphi程序

几个获取Windows系统信息的Delphi程序

时间: 2021-07-31 作者:daque

谢建华 正文一切的窗体界面略去,读者群可按照步调自行增添各窗口组件。 1、获得windows本子消息 不妨经过windows api因变量getversionex来赢得。 简直步调如次: procedure tform1.button1click(sender:tobject); var osvi:osversioninfo; begin osvi.dwosversioninfosize:=sizeof(osversioninfo); getversionex(osvi); label1.caption:=inttostr(osvi.dwminorversion)+',' +inttostr(osvi.dwminorversion)+',' +inttostr(osvi.dwbuildnumber)+',' +inttostr(osvi.dwplatformid)+',' +osvi.szcsdversion; end; end. 2、获得cpu消息 不妨经过windows api因变量getsysteminfo来赢得相关消息。 简直步调如次: procedure tform1.button1click(sender: tobject); var sysinfo:system_info; begin getsysteminfo(sysinfo); edit1.text:='体例中有'+inttostr(sysinfo.dwnumberofprocessors)+'个cpu' +',典型为'+inttostr(sysinfo.dwprocessortype); end; end. 3、获得外存消息 不妨经过windows api因变量globalmemorystatus来赢得外存消息。 简直步调如次: procedure tform1.button1click(sender: tobject); var meminfo:memorystatus; begin meminfo.dwlength:=sizeof(memorystatus); globalmemorystatus(meminfo); memo1.lines.add(inttostr(meminfo.dwmemoryload)+'%的外存正在运用') ; memo1.lines.add('物理外存公有'+inttostr(meminfo.dwtotalphys)+'字节'); memo1.lines.add('可运用的物理外存有'+inttostr(meminfo.dwavailphys)+'字节'); memo1.lines.add('调换文献总巨细为'+inttostr(meminfo.dwtotalpagefile)+'字节') ; memo1.lines.add('尚可调换文献巨细为'+inttostr(meminfo.dwavailpagefile)+'字节'); memo1.lines.add('总假造外存有'+inttostr(meminfo.dwtotalvirtual)+'字节'); memo1.lines.add('未用假造外存有'+inttostr(meminfo.dwavailvirtual)+'字节'); end; end. 或用以次代码: memo1.text:=inttostr(meminfo.dwmemoryload)+'%的外存正在运用'+#13#10 +'可运用的物理外存有'+inttostr(meminfo.dwavailphys)+'字节'+#13#10 +'调换文献总巨细为'+inttostr(meminfo.dwtotalpagefile)+'字节'+#13#10 +'尚可调换文献巨细为'+inttostr(meminfo.dwavailpagefile)+'字节'+#13#10 +'总假造外存有'+inttostr(meminfo.dwtotalvirtual)+'字节'+#13#10 +'未用假造外存有'+inttostr(meminfo.dwavailvirtual)+'字节'; 来代替memo1.line.add(…)局部。 4、获得windows和体例路途 不妨经过windows api因变量来赢得 简直步调如次: procedure tform1.button1click(sender: tobject); var sysdir:array[0..128] of char; begin getwindowsdirectory(sysdir,128); edit1.text:='windows 路途:'+sysdir; getsystemdirectory(sysdir,128); edit1.text:=edit1.text+'; 体例路途:'+sysdir; end; end. 个中,笔者经过变动数列的值:创造个中的128可变动为人以不小于16的的数值,若小于或即是16均展示特殊(笔者的操纵体例为windows2000)。读者群伙伴无妨试试。 5、获得用户备案消息 咱们都领会,普遍在软硬件安置进程中,它城市提醒用户,诉求输出系列号或产物号和用户的少许备案消息(用户的公司称呼、用户名等)以及安置的目次和路途等。 经过以次代码可察看用户备案消息: procedure tform1.button1click(sender: tobject); var reg:tregistry; begin reg:=tregistry.create; reg.rootkey:=hkey_local_machine; reg.openkey('software\microsoft\windows nt\currentversion',false); edit1.text:='暂时路途:'+reg.currentpath; edit2.text:='产物系列号:'+reg.readstring('productid'); edit3.text:='产物名:'+reg.readstring('productname'); edit4.text:='备案公司称呼:'+reg.readstring('registeredorganization'); edit5.text:='用户名:'+reg.readstring('registeredowner'); edit6.text:='软硬件典型:'+reg.readstring('softwaretype'); reg.closekey; reg.free; end; end. 提防:在步调编写翻译之前,必需在uses语句下增添registry单位。 6、封闭widows 不妨经过windows api因变量exitwindowsex来封闭widows。 procedure tform1.button1click(sender: tobject); begin if radiobutton1.checked=true then exitwindowsex(ewx_logoff,0) //以其余用户身份登录 else if radiobutton2.checked=true then exitwindowsex(ewx_shutdown,1) //安定关灯 else if radiobutton3.checked=true then exitwindowsex(ewx_reboot,2) //从新启用计划机 else if radiobutton4.checked=true then exitwindowsex(ewx_force,4) //强行关灯 else if radiobutton5.checked=true then exitwindowsex(ewx_poweroff,8); //封闭体例并封闭电源 end; end.

热门阅览

最新排行

Copyright © 2019-2021 大雀软件园(www.daque.cn) All Rights Reserved.