Среда, 27.11.2024, 22:35
Клан программистов ГлавнаяРегистрацияВход
Приветствую Вас Гость | RSS
Меню сайта
Категории каталога
Юмор [6]
Полезные статьи [94]
Полезная информация по вебразработке, продвижению своего проекта и т.д.
Photoshop [29]
Языки программирования [20]
Коды, читы для PSP [27]
Интересное в сети [12]
Самые интересные новости и достижения найденые в инете
Обзоры игр [31]
Железо [93]
Игровые приставки [4]
Мобильные телефоны [835]
Интернета и icq!Настройка [15]
описание как настроить ваш телефон для нормальной работы интернета и icq
Наш опрос
В какое время вам нужен рабочий Ftp-сервер??
Всего ответов: 51
 Каталог статей 
Главная » Статьи » Языки программирования

Пишем прогу мониторинга за памятью
И так время от времени я буду выкладывать интересненькие примеры простеньких программ на языке Delphi и С++

Сегодня мы попытаемся написать программу, которая будет показывать состояние памяти компа. Для начала определим что она будет делать. Ну самое главное что нам нужно, это состояние физической памяти и загруженность ее в %. А дальше, по своему вкусу, добавим еще состояние виртуальной и страничной памяти.

Начнем. Создай новый проект на Делфи ( File->New->Application). Теперь подумай, как тебе удобней отображать состояние памяти. Для меня лучше в Label, но можно и Edit. Ну это на твое усмотрение. Кидай на форму 7 компонентов Label (в них будет отображаться значение) и еще 7 (это будут пояснения: загруженность, всего физической, использовано физической, всего страничной, использовано страничной, всего виртуальной, использовано виртуальной). Какие не нужны, те отбрось wink . Теперь кинь таймер (из вкладки System). Это будет наш главный элемент., поэтому поставь интервал по своему усмотрению (у меня он 400). Этот интервал будет отвечать за частоту обновления полей. Ну и для красоты брось ProgressBar ( из вкладки Win32). У тебя должно получиться что-то типа этого:

Теперь приступим непосредственно к кодингу. Весь код мы будем писать в процедуру запуска таймера. А вот и код:

procedure TForm1.Timer1Timer(Sender: TObject);
var
m: TMemoryStatus;
temp: integer;
begin
m.dwLength:=sizeof(m);
GlobalMemoryStatus(m);
with m do
begin
//Загруженность памяти
label1.caption:=IntToStr (dwMemoryLoad)+′ %′;
// Всего физической
label2.caption:=IntToStr (dwTotalPhys)+′ байт′;
// Свободно физической
label3.caption:=IntToStr (dwAvailPhys)+′ байт′;
// Всего страничной
label4.caption:=IntToStr (dwTotalPageFile)+′ байт′;
// Свободно страничной
label5.caption:=IntToStr (dwAvailPageFile)+′ байт′;
// Всего выиртуальной
label6.caption:=IntToStr (dwTotalVirtual)+′ байт′;
//Свободно виртуальной
label7.caption:=IntToStr (dwAvailVirtual)+′ байт′;
//Загруженность на ProgressBar1
progressbar1.Max:= dwTotalPhys;
progressbar1.Position:=dwTotalPhys-dwAvailPhys;
end;
end;

Вот в принципе и все. Если ты используешь Edit, то вместо labelX.caption пиши EditX.text , где х-номер компонента. И последнее, чтобы pogressBar выглядела лучше, измени свойство Smooth равным True.

Источник: http://read.excode.ru/

Категория: Языки программирования | Добавил: NIK (18.04.2008) | Автор: Виталий
Просмотров: 736 | Рейтинг: 0.0/0 |
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа
Поиск
Друзья сайта
Статистика

Онлайн всего: 2
Гостей: 2
Пользователей: 0
Copyright MyCorp © 2024Используются технологии uCoz