var
bAddr:dword;
SysInfo:SYSTEM_INFO;
MemInfo:TMemoryBasicInformation;
hProc:THandle;
mt:dword;
begin
mt:=0;
hProc:=OpenProcess(PROCESS_ALL_ACCESS,false,GetCurrentProcessId);
GetSystemInfo(sysinfo);
bAddr:=dword(sysinfo.lpMinimumApplicationAddress); while VirtualQueryEx(hProc,pointer(bAddr),meminfo,sizeof(meminfo))<>0 do
begin
if (meminfo.State=MEM_COMMIT) then
begin
mt:=mt+meminfo.RegionSize;
end;
bAddr:=meminfo.RegionSize+dword(meminfo.BaseAddress);
end;
ShowMessage(inttostr(mt div 1024)); // 显示值和Windows任务管理器里面的不一样? 为什么.
bAddr:dword;
SysInfo:SYSTEM_INFO;
MemInfo:TMemoryBasicInformation;
hProc:THandle;
mt:dword;
begin
mt:=0;
hProc:=OpenProcess(PROCESS_ALL_ACCESS,false,GetCurrentProcessId);
GetSystemInfo(sysinfo);
bAddr:=dword(sysinfo.lpMinimumApplicationAddress); while VirtualQueryEx(hProc,pointer(bAddr),meminfo,sizeof(meminfo))<>0 do
begin
if (meminfo.State=MEM_COMMIT) then
begin
mt:=mt+meminfo.RegionSize;
end;
bAddr:=meminfo.RegionSize+dword(meminfo.BaseAddress);
end;
ShowMessage(inttostr(mt div 1024)); // 显示值和Windows任务管理器里面的不一样? 为什么.
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货