Содержание материала

 

 

Code:

{ **** UBPFD ***************

>> Показывает загруженость процессора

 

Показывает загруженость процессора

 

Зависимости: registry,Windows, SysUtils, Forms,Gauges,

            Classes, Controls, ExtCtrls, StdCtrls;

Автор:       DDA, Vologda

Copyright:   Где-то найдено

***************************************************** }

 

unit Unit1;

 

interface

 

uses

registry, Windows, SysUtils, Forms, Gauges, Classes, Controls, ExtCtrls,

   StdCtrls;

 

type

TForm1 = class(TForm)

   Gauge1: TGauge;

   Timer1: TTimer;

   Button1: TButton;

   procedure Button1Click(Sender: TObject);

   procedure Timer1Timer(Sender: TObject);

private

   { Private declarations }

public

   { Public declarations }

end;

 

var

Form1: TForm1;

 

implementation

 

{$R *.dfm}

 

procedure TForm1.Button1Click(Sender: TObject);

var

def: string;

reg: TRegistry;

Buffer: array[0..1000] of integer;

begin

//-------------------------------

reg := TRegistry.Create;

reg.RootKey := HKEY_DYN_DATA;

def := '';

if reg.OpenKey('PerfStats\StartStat', false) = TRUE then

begin

   reg.ReadBinaryData('KERNEL\CPUusage', buffer, 1000);

end;

reg.CloseKey;

Timer1.Enabled := true;

 

end;

//-------------------------------

 

procedure TForm1.Timer1Timer(Sender: TObject);

var

def: string;

reg: TRegistry;

B: array[1..4] of integer;

begin

reg := TRegistry.Create;

reg.RootKey := HKEY_DYN_DATA;

def := '';

if reg.OpenKey('PerfStats\StatData', false) = TRUE then

begin

   reg.ReadBinaryData('KERNEL\CPUusage', b, 4);

end;

 

reg.CloseKey;

Gauge1.Progress := b[1];

Application.ProcessMessages;

 

//-------------------------------

end;

 

end.

 

 

Добавить комментарий

Не использовать не нормативную лексику.

Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.

ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!


Защитный код
Обновить