Определение свободного места в файле подкачки

  • Автор темы GrayCat78
  • Дата начала
G

GrayCat78

Гость
#1
Здравствуйте, уважаемые мастера Delphi.

Есть такая проблема:
Нужно определить размер и свободное место в файле подкачки Windows в WinXP SP2.

В нескольких местах в интернете я нашёл один и тот же код типа этого:

var
Status : TMemoryStatus;
begin
Status.dwLength := sizeof( TMemoryStatus );
GlobalMemoryStatus( Status );

{ Status.dwTotalPageFile: Объём страничного файла в байтах. }
{ Status.dwAvailPageFile: Свободного места в страничном файле. }

label11.Caption := ' Всего: ' + IntToStr(Status.dwTotalPageFile div 1024417) + ' Мб';
label12.Caption := ' Свободно: ' + IntToStr(Status.dwAvailPageFile div 1024417) + ' Мб';

Однако, он работает неверно, то есть показывает не размер и свободное место в файле подкачки Windows, а размер физической памяти + размер файла подкачки, причём, если отнять от получаемого этим кодом размера размер физической памяти, то полученный результат будет отличаться от фактического размера файла подкачки более чем на 100 Мб.

Нет ли другого способа получить вышеуказанные данные?
 

Kmet

Well-Known Member
Java Team
25.05.2006
1 036
8
#2
что такое свободное место в файла подкачки?