Форум программистов, компьютерный форум CyberForum.ru

Delphi и WinAPI

Войти
Регистрация
Восстановить пароль
 
pixel
17 / 10 / 1
Регистрация: 19.05.2009
Сообщений: 1,536
#1

Как определить точный размер оперативной памяти? - Delphi WinAPI

04.04.2016, 17:20. Просмотров 523. Ответов 7
Метки нет (Все метки)

Приветствую.
Есть функция:
Delphi
1
2
3
4
5
6
7
8
9
10
function GetMem: String;
var
MyMem: TMemoryStatus;
begin
MyMem.dwLength:=SizeOf(MyMem);
GlobalMemoryStatus(MyMem);
with MyMem do begin
Result:= IntToStr(dwTotalPhys);
end;
end;
возвращает 4294967295, хотя у меня 16 гигов стоит. Подскажите функцию которая вернет правильное значение.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.04.2016, 17:20     Как определить точный размер оперативной памяти?
Посмотрите здесь:

Как определить размер и атрибуты файла? - Delphi WinAPI
скажите пожалуйста почему мне не выдает размер файла эта функция procedure TForm3.Button3Click(Sender: TObject); var ...

Как задать размер стороннего окна при открытии и расположение от формы (справа/слева)? - Delphi WinAPI
Подскажите! Открываю некий скрипт в программе. Команду подаю из делфи и собственно открываю этот самый скрипт в нужной мне программе. Как...

Как правильно прочитать строку памяти процесса? - Delphi WinAPI
Как правильно прочитать строку памяти (не unicode) другого процесса через winapi? Компилятор: Delphi 7

Как на Delphi определить параметры ЖД? - Delphi WinAPI
Кто знает, как в программе на Delhi определить число головок, треков и секторов (heads/tracks/sectors) жёсткого диска?

Виртуальная клавиатура, как определить HWND - Delphi WinAPI
В общем у меня 2 проблемы Первая проблема: я не могу понять как определить HWND вод для вот этой функции FindWindow('notepad', nil); ...

как программно определить путь C:\Program Files - Delphi WinAPI
Здравствуйте! напишите пожалуйста, как программно определить путь C:\Program Files ? Мне нужно определить программно, так как на...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
FIL
Модератор
3366 / 2504 / 476
Регистрация: 19.09.2012
Сообщений: 7,819
04.04.2016, 18:43     Как определить точный размер оперативной памяти? #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
GlobalMemoryStatusEx()
pixel
17 / 10 / 1
Регистрация: 19.05.2009
Сообщений: 1,536
04.04.2016, 18:55  [ТС]     Как определить точный размер оперативной памяти? #3
похоже это для дельфей не ниже 7?
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
22816 / 14958 / 4303
Регистрация: 22.10.2011
Сообщений: 26,525
Записей в блоге: 4
04.04.2016, 18:56     Как определить точный размер оперативной памяти? #4
При чем тут версия Дельфи? Это WinAPI
pixel
17 / 10 / 1
Регистрация: 19.05.2009
Сообщений: 1,536
04.04.2016, 19:37  [ТС]     Как определить точный размер оперативной памяти? #5
сорри, нашел пример, в котором было DWORDLONG = UInt64 - из за этого и спросил. нашел другой пример, все заработало. спасибо.

Добавлено через 27 минут
volvo, подскажите еще один момент. В свойствах компа пишет 16.0 Гб, а в проге выдает 15,98 Гб
вот строка
Delphi
1
Memo1.Lines.Add(Format('%.2f ГБ',[MemoryStatus.ullTotalPhys/(1024*1024*1024)]));
где правда?
NotBeginner
148 / 148 / 19
Регистрация: 22.02.2013
Сообщений: 2,711
Записей в блоге: 2
27.05.2016, 15:22     Как определить точный размер оперативной памяти? #6
pixel, а если делить на 1000 вместо 1024
похоже на маркетинговый ход)
djljktq_81
0 / 0 / 0
Регистрация: 19.04.2016
Сообщений: 6
09.06.2016, 06:29     Как определить точный размер оперативной памяти? #7
Можно попробовать сравнить с выводом какой-нибудь специализированной утилиты.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.06.2016, 07:06     Как определить точный размер оперативной памяти?
Еще ссылки по теме:

Размер свободного места на диске - Delphi WinAPI
Как узнать размер свободного пространства на диске в мегабайтах???

Как програмно определить размер оперативной памяти - C#
У меня такой вопрос: Как програмно определить размер оперативной памяти? В гугле ничё не нашёл решил здесь спросить.

Как определить максимально возможный размер оперативной памяти для своего компьютера? - Оперативная память
Собственно имеется 1 гиг оперативки и тормозящая при этом с завидной регулярностью максимальная семёрка. Для оперативки имеется четыре...

Как узнать размер оперативной памяти? - Оперативная память
Привет, меня интересует,- как определить размер озу без О.С и если на ней ни чего не написано? Я думаю, что нужно битность 1 ечейки...


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

Или воспользуйтесь поиском по форуму:
Postscripter
5 / 5 / 1
Регистрация: 04.07.2012
Сообщений: 150
14.06.2016, 07:06     Как определить точный размер оперативной памяти? #8

Не по теме:

Delphi
1
2
3
4
5
6
7
8
true
 repeat
  GetMem(p, 1024);
  inc(cnt);
 until false;
expect 
 showmessage('У вас было' + inttostr(cnt) + ' килобайт памяти');
end


J
Yandex
Объявления
14.06.2016, 07:06     Как определить точный размер оперативной памяти?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru