高手帮忙!
VOID GlobalMemoryStatus(
LPMEMORYSTATUS lpBuffer // pointer to the memory status structure
);
typedef struct _MEMORYSTATUS { // mst
DWORD dwLength; // sizeof(MEMORYSTATUS)
DWORD dwMemoryLoad; // percent of memory in use
DWORD dwTotalPhys; // bytes of physical memory
DWORD dwAvailPhys; // free physical memory bytes
DWORD dwTotalPageFile; // bytes of paging file
DWORD dwAvailPageFile; // free bytes of paging file
DWORD dwTotalVirtual; // user bytes of address space
DWORD dwAvailVirtual; // free user bytes
} MEMORYSTATUS, *LPMEMORYSTATUS;
dwMemoryLoad 是内存使用率,函数很简单,只要传递一个参数就可以了。
检测当前内存
procedure TForm1.Button2Click(Sender: TObject);
var
str:String;
begin
ClearMemoryInData;
GlobalMemoryStatus(m1);
str:=内存使用百分比 :
+IntToStr(m.dwMemoryLoad)+,+IntToStr(m1.dwMemoryLoad)+#13#10+
实际内存总字节数 :
+IntToStr(m.dwTotalPhys)+,+IntToStr(m1.dwTotalPhys)+#13#10+
可用的实际内存字节数:
+IntToStr(m.dwAvailPhys)+,+IntToStr(m1.dwAvailPhys)+#13#10+
分页文件总字节数 :
+IntToStr(m.dwTotalPageFile)+,+IntToStr(m1.dwTotalPageFile)+#13#10+
分页文件可用字节数 :
+IntToStr(m.dwAvailPageFile)+,+IntToStr(m1.dwAvailPageFile)+#13#10+
虚拟内存的总字节数 :
+IntToStr(m.dwTotalVirtual)+,+IntToStr(m1.dwTotalVirtual)+#13#10+
可用的虚拟内存字节数:
+IntToStr(m.dwAvailVirtual)+,+IntToStr(m1.dwAvailVirtual)+#13#10;
MessageBox(Handle,PChar(str),提示信息,MB_OK);
end;