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

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

GrayCat78

Здравствуйте, уважаемые мастера 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 Мб.

Нет ли другого способа получить вышеуказанные данные?
 
что такое свободное место в файла подкачки?
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab