Форум: "Система";
Текущий архив: 2003.03.10;
Скачать: [xml.tar.bz2];
ВнизКак узнать сколько памяти занято и сколько свободно???Очень надо Найти похожие ветки
← →
Dor (2003-01-08 19:37) [0]Как узнать сколько памяти занято и сколько свободно???Очень надо
пожалуйста подскажите
← →
orlov (2003-01-08 19:43) [1]void __fastcall TForm1::Memory1Click(TObject *Sender)
{
char buf[16];
MEMORYSTATUS ms;
ms.dwLength = sizeof(MEMORYSTATUS);
GlobalMemoryStatus(&ms);
wsprintf (buf, "%d", ms.dwTotalPhys);
MemoryForm->TotalPhysicalEdit->Text = buf;
wsprintf (buf, "%d", ms.dwAvailPhys);
MemoryForm->FreePhysicalEdit->Text = buf;
wsprintf (buf, "%d", ms.dwTotalPageFile);
MemoryForm->TotalPagingEdit->Text = buf;
wsprintf (buf, "%d", ms.dwAvailPageFile);
MemoryForm->FreePagingEdit->Text = buf;
wsprintf (buf, "%d", ms.dwTotalVirtual);
MemoryForm->TotalVirtualEdit->Text = buf;
wsprintf (buf, "%d", ms.dwAvailVirtual);
MemoryForm->FreeVirtualEdit->Text = buf;
MemoryForm->ShowModal();
}
← →
TTCustomDelphiMaster (2003-01-08 20:38) [2]смотри в FAQ и кладовке
← →
Armen (2003-01-11 17:20) [3]>To Orlov
GlobalMemoryStatus работает с DWORD, а если памяти больше 2G ?
Надо так:
type
TMemoryStatusEx = record
dwLength: DWORD;
dwMemoryLoad: DWORD;
dwTotalPhys: int64;
dwAvailPhys: int64;
dwTotalPageFile: int64;
dwAvailPageFile: int64;
dwTotalVirtual: int64;
dwAvailVirtual: int64;
dwAvailExVirtual: int64;
end;
procedure GlobalMemoryStatusEx(var lpBuffer: TMemoryStatusEx); stdcall;
impementation
procedure GlobalMemoryStatusEx; external kernel32 name "GlobalMemoryStatusEx";
....
...
end.
← →
Armen (2003-01-11 17:21) [4]>To Orlov
GlobalMemoryStatus работает с DWORD, а если памяти больше 2G ?
Надо так:
type
TMemoryStatusEx = record
dwLength: DWORD;
dwMemoryLoad: DWORD;
dwTotalPhys: int64;
dwAvailPhys: int64;
dwTotalPageFile: int64;
dwAvailPageFile: int64;
dwTotalVirtual: int64;
dwAvailVirtual: int64;
dwAvailExVirtual: int64;
end;
procedure GlobalMemoryStatusEx(var lpBuffer: TMemoryStatusEx); stdcall;
impementation
procedure GlobalMemoryStatusEx; external kernel32 name "GlobalMemoryStatusEx";
....
...
end.
← →
Armen (2003-01-11 17:21) [5]>To Orlov
GlobalMemoryStatus работает с DWORD, а если памяти больше 2G ?
Надо так:
type
TMemoryStatusEx = record
dwLength: DWORD;
dwMemoryLoad: DWORD;
dwTotalPhys: int64;
dwAvailPhys: int64;
dwTotalPageFile: int64;
dwAvailPageFile: int64;
dwTotalVirtual: int64;
dwAvailVirtual: int64;
dwAvailExVirtual: int64;
end;
procedure GlobalMemoryStatusEx(var lpBuffer: TMemoryStatusEx); stdcall;
impementation
procedure GlobalMemoryStatusEx; external kernel32 name "GlobalMemoryStatusEx";
....
...
end.
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2003.03.10;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c