Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
 Аватар для San22Rus
14 / 14 / 8
Регистрация: 07.03.2016
Сообщений: 152

Мониторинг оперативной памяти - Delphi XE7

01.07.2016, 12:55. Показов 3142. Ответов 22
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток! У меня такая проблема, в интернете наткнулся на статью, где описан код программы определения оперативной памяти, захотел себе написать, но у меня он определяет неправильно(всего ОП и свободно), а нагрузку правильно .
Вот код:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
procedure TForm1.Timer1Timer(Sender: TObject);
var mem: TMemoryStatus;
begin
  mem.dwLength:=sizeof(mem);
  globalmemorystatus(mem);
  with mem do
  begin
  sLabel4.Caption:=inttostr(dwmemoryload)+ ' %';
  sLabel6.Caption:=inttostr((dwtotalphys) div 1024)+ ' Кбайт';
  slabel5.Caption:=inttostr((dwavailphys) div 1024)+ ' Кбайт';
  sGauge1.Progress:=dwmemoryload;
  end;
end;
 
end.
У меня на компе 4ГБ оперы, а код определил как 2ГБ. Почему так????
Заранее спасибо!
Миниатюры
Мониторинг оперативной памяти - Delphi XE7  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.07.2016, 12:55
Ответы с готовыми решениями:

Delphi 7 SAPI ошибка в Delphi XE7
Привет знатоки поиске нашел sapi на delphi 7 работает а Delphi XE7 выдает ошибку на TTSNotifySink = class; unit Unit1; interface ...

Delphi XE7
Здравствуйте уважаемые пользователи данного форума у меня возникла проблема с копированием содержимого в буфер обмена и вставка из буфера...

Delphi XE7
Привет, может кто нибудь знает serial number для Delphi XE7 (Embarcadero RAD Studio XE7)?

22
 Аватар для VyachNik
51 / 51 / 35
Регистрация: 16.02.2016
Сообщений: 289
01.07.2016, 17:19
Студворк — интернет-сервис помощи студентам
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
unit Unit1;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Gauges;
type
  PMEMORYSTATUSEX = ^MEMORYSTATUSEX;
  MEMORYSTATUSEX = record
    dwLength: DWORD;
    dwMemoryLoad: DWORD;
    ullTotalPhys: Int64;
    ullAvailPhys: Int64;
    ullTotalPageFile: Int64;
    ullAvailPageFile: Int64;
    ullTotalVirtual: Int64;
    ullAvailVirtual: Int64;
    ullAvailExtendedVirtual: Int64;
  end;
type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Gauge1: TGauge;
    procedure FormShow(Sender: TObject);
  private
    procedure GetMemoryInfo;
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
  function GlobalMemoryStatusEx(lpBuffer: PMEMORYSTATUSEX):
           Boolean; stdcall; external kernel32;
implementation
{$R *.dfm}
{ TForm1 }
procedure TForm1.GetMemoryInfo;
var
  MemInfo: MEMORYSTATUSEX;
begin
  MemInfo.dwLength := SizeOf(MEMORYSTATUSEX) ;
  GlobalMemoryStatusEx(@MemInfo) ;
  Label3.Caption := IntToStr(MemInfo.ullTotalPhys div 1024)+'K';
  Label4.Caption := IntToStr(MemInfo.ullAvailPhys div 1024)+'K';
  Gauge1.Progress := MemInfo.ullAvailPhys div (MemInfo.ullTotalPhys div 100);
end;
procedure TForm1.FormShow(Sender: TObject);
begin
  GetMemoryInfo;
end;
end.
0
 Аватар для San22Rus
14 / 14 / 8
Регистрация: 07.03.2016
Сообщений: 152
01.07.2016, 17:20  [ТС]
конечно куда тяжелее....вот сам всё таки написал, намного легче, по крайней мере для меня
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
procedure TForm1.Timer1Timer(Sender: TObject);
var
  LMemStat:TMemoryStatusEx;
  a,b:String;
begin
  LMemStat.dwLength:=SizeOf(TMemoryStatusEx);
  if GlobalMemoryStatusEx(LMemStat)=False then
    ShowMessage('Error!')
  else
  with LMemStat do
  begin
    a:= 'Total RAM: '+IntToStr(ullTotalPhys div 1048576);
    b:= 'Available RAM: '+IntToStr(ullAvailPhys div 1048576);
    label1.Caption:=(a);
    label2.Caption:=(b);
end;
0
6003 / 4578 / 1096
Регистрация: 29.08.2013
Сообщений: 28,274
Записей в блоге: 3
01.07.2016, 17:32
а я не понимаю - винда видит мои 6 гигов и показывает что 3,4 доступно
функция показывает только то что доступно
нужно еще получить всю память
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
01.07.2016, 17:32

Работа с бд delphi xe7
Добрый вечер. Подскажите почему у меня программа просто не запускается из-за этого кода procedure TForm2.sButton1Click(Sender:...

Шифрование в Delphi xe7
Такая задача нужно зашифровать текст из Edit1 и записать в реестр. Потом считать с реестра расшифровать и записать в Edit2. Записать и...

Delphi xe7 условия
Всем привет! Установил delphi xe7 и решил создать программку, но не могу разобраться с условиями. Пишу как в версии delphi 7 но не...

Потоки в Delphi XE7
При создании/запуске потока/ов возникает ошибка. Даже если поток ничего не делает. Что надо сделать, что бы избавиться от этого?

Delphi xe7 и gif
Люди помогите вставить в программу gif-ку :-[


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
23
Ответ Создать тему
Новые блоги и статьи
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru