Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 5 549

/ вопрос открыт /

Доброго времени суток, уважаемые эксперты!
Какой код нужно ввести чтоб в labelах отображались:
Физическая память:
системный кеш(Int)
Всего:
дескрипторы(Int)
потоки(Int)
процессы(Int)
Память ядра:
Всего(Int)
Выгружаемая(Int)
Невыгружаенмая(Int)
Выделение памяти:
Всего(Int)
Предел(Int)
Пик(Int)

Приложение:
  1.  


NoSleep Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: NoSleep (статус: Посетитель)
Вопрос отправлен: 2 августа 2011, 12:53
Состояние вопроса: открыт, ответов: 1.

Ответ #1. Отвечает эксперт: Localiz

Здравствуйте, Еремин В.Е!
var
ms:TMemoryStatus;
begin
GlobalMemoryStatus(MS);
Label1.Caption:=FormatFloat('Оперативная память: #,###" Мб"', MS.dwTotalPhys / 1024/ 1024);
Label2.Caption := FormatFloat('Свободно места: #,###" Гб"', MS.dwTotalVirtual / 1024/ 1024 / 1024);
Label3.Caption := FormatFloat('Файл подкачки: #,###" Гб"', MS.dwTotalPageFile / 1024/ 1024 / 1024);
Label3.Caption := FormatFloat('Файл подкачки: #,###" Гб"', MS.dwTotalVirtual / 1024/ 1024 / 1024);

Ответ отправил: Localiz (статус: 1-ый класс)
Время отправки: 5 августа 2011, 14:05


Мини-форум вопроса

Всего сообщений: 2; последнее сообщение — 5 августа 2011, 12:28; участников в обсуждении: 2.
bugmenot

bugmenot (статус: 3-ий класс), 2 августа 2011, 14:19 [#1]:

Цитата (NoSleep):

Где хранится компонент отображения графика
В \demos\ к бидлеру, к дельфям аналога нет
виконання програми розпочинається з того самого мiсця, де призупинилося.

Localiz

Localiz (статус: 1-ый класс), 5 августа 2011, 12:28 [#2]:

unit MemoryOptimizer;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, Gauges, StdCtrls, ShellAPI, Menus;
 
type
  TForm8 = class(TForm)
    GgAllocatedMem: TGauge;
    GgAllocatedPhysicalMem: TGauge;
    GgAllocatedPageFileMem: TGauge;
    GgAllocatedVirtualMem: TGauge;
    GgFreeMem: TGauge;
    GgFreePhysicalMem: TGauge;
    GgFreePageFileMem: TGauge;
    GgFreeVirtualMem: TGauge;
    Label1: TLabel;
    Label2: TLabel;
    Panel9: TPanel;
    Panel10: TPanel;
    MmResumo: TMemo;
    TmrRefresh: TTimer;
    BalloonHint1: TBalloonHint;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure TmrRefreshTimer(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure Fechar1Click(Sender: TObject);
    private
    DeixaSair: Boolean;
    IconData: TNotifyIconData;
    procedure MyMinimize(Sender: TObject);
    function UpRound(Value: Double): Integer;
    function DownRound(Value: Double): Integer;
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form8: TForm8;
 
implementation
  uses bootspeed;
{$R *.dfm}
 
function TForm8.DownRound(Value: Double): Integer;
begin
  Result := Trunc(Value);
end;
 
procedure TForm8.FormClose(Sender: TObject; var Action: TCloseAction);
begin
form8.close;
form1.showmodal;
end;
 
function Tform8.UpRound(Value: Double): Integer;
begin
  Result := Trunc(Value);
  if Frac(Value) <> 0 then
    Result := Trunc(Value + 1);
end;
 
procedure TForm8.FormCreate(Sender: TObject);
begin
  TmrRefreshTimer(Self);
end;
 
procedure TForm8.FormDestroy(Sender: TObject);
begin
  Shell_NotifyIcon(NIM_DELETE, @IconData);
end;
 
procedure TForm8.TmrRefreshTimer(Sender: TObject);
const
  cBytesPorMb = 1024 * 1024;
var
  MemStatus: TMemoryStatus;
begin
  MemStatus.dwLength := SizeOf(MemStatus);
  GlobalMemoryStatus(MemStatus);
 
  MmResumo.Clear;
  with MmResumo.Lines do
   begin
    Add(Format('Использовано памяти:                     %d%%', [MemStatus.dwMemoryLoad]));
    Add('Физическая память:             ' + FormatFloat('0000.00 Мб', MemStatus.dwTotalPhys / cBytesPorMb));
    Add('Файл подкачки:                 ' + FormatFloat('0000.00 Мб', MemStatus.dwTotalPageFile / cBytesPorMb));
    Add('Физическая память:             ' + FormatFloat('0000.00 Мб', MemStatus.dwTotalVirtual / cBytesPorMb));
   end;
 
  // Memorias alocadas
  with GgAllocatedMem do
  begin
    MaxValue := DownRound(MemStatus.dwTotalPhys / cBytesPorMb);
    Progress := UpRound(MemStatus.dwMemoryLoad);
  end;
  with GgAllocatedPhysicalMem do
  begin
    MaxValue := DownRound(MemStatus.dwTotalPhys / cBytesPorMb);
    Progress := UpRound((MemStatus.dwTotalPhys - MemStatus.dwAvailPhys) / cBytesPorMb);
  end;
  with GgAllocatedPageFileMem do
  begin
    MaxValue := DownRound(MemStatus.dwTotalPageFile / cBytesPorMb);
    Progress := UpRound((MemStatus.dwTotalPageFile - MemStatus.dwAvailPageFile) / cBytesPorMb);
  end;
  with GgAllocatedVirtualMem do
  begin
    MaxValue := DownRound(MemStatus.dwTotalVirtual / cBytesPorMb);
    Progress := UpRound((MemStatus.dwTotalVirtual - MemStatus.dwAvailVirtual) / cBytesPorMb);
  end;
 
  // Memуrias disponнveis
  with GgFreeMem do
  begin
    MaxValue := DownRound(MemStatus.dwTotalPhys / cBytesPorMb);
    Progress := DownRound(MemStatus.dwTotalPhys / cBytesPorMb) - DownRound(MemStatus.dwMemoryLoad);
  end;
  with GgFreePhysicalMem do
  begin
    MaxValue := DownRound(MemStatus.dwTotalPhys / cBytesPorMb);
    Progress := DownRound(MemStatus.dwAvailPhys / cBytesPorMb);
  end;
  with GgFreePageFileMem do
  begin
    MaxValue := DownRound(MemStatus.dwTotalPageFile / cBytesPorMb);
    Progress := DownRound(MemStatus.dwAvailPageFile / cBytesPorMb);
  end;
  with GgFreeVirtualMem do
  begin
    MaxValue := DownRound(MemStatus.dwTotalVirtual / cBytesPorMb);
    Progress := DownRound(MemStatus.dwAvailVirtual / cBytesPorMb);
  end;
end;
 
procedure Tform8.MyMinimize(Sender: TObject);
begin
  ShowWindow(Application.Handle, SW_HIDE);
end;
 
procedure Tform8.Fechar1Click(Sender: TObject);
begin
  Close;
end;
 
end.

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:41
Выполнено за 0.04 сек.