delphi获取内存信息

2018-10-31

delphi获取内存信息


实例说明
有些delphi程序运行时需要一定大小的内存配置,如果用户计算机的内存低于这个值,程序启动前轻则弹出警告对话框,重则中止当前程序的运行,以避免不必要的系统崩溃。本例比较简单,下面就介绍这方面的技巧。


编程思路
delphi可通过调用API函数GlobalMemoryStatus来达到目的,该delphi函数可以直接获取有关内存状考的信息。


编程步骤
本例主要源代码如下:
//处理点击“获得内存信息”后的事件
procedure TForm1.Button1Click(Sender: TObject);
var
Memlnfo:MemoryStaus;
begin
//用sizeof(MemoryStatus)填充dwLength成员
Memlnfo.dwLength:=sizeof(MemoryStatus);
//获取内存信息
GlobalMemoryStatus(MemInfo);
//内存使用百分比
Edit1.Text:=IntToStr(Memlnfo.dwMemoryLoad)+'%';
//总物理内存(字节)
Edit2.Text:=IntToStr(MemInfo dwTotalPhys);
//未使用物理内存(字节)
Edit3.Text:=IntToStr(MemInfo.dwAvailPhys);
//交换文件大小(字节)
Edit4.Text:=IntToStr(Memlnfo.dwTotalPageFile);
//未使用交换文件大小(字节)
Edit5.Text:=IntToStr(MemInfo dwAvailPageFile);
//虚拟内存空间大小(字节)
Edit6.Text:=IntToStr(MemInfo.dwTotalVirtual);
//未使用虚拟内存大小(字节)
Edit7.Text:=IntToStr(Memlnfo.dwAvailVirtual);
end;
编程总结
本例中内存大小都是以字节为单位的,实际应用中为了简单直观,一般应以兆字节为单位,你只需要以字节为单位的结果除以(1024×1024)即可。
阅读38