Смекни!
smekni.com

Мониторинг ОС (стр. 2 из 3)

Shift: TShiftState; X, Y: Integer);

begin

Image5.Picture:=Image12.Picture;

end;

procedure TForm1.Image6MouseDown(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

begin

Image6.Picture:=Image25.Picture;

end;

procedure TForm1.Image7MouseDown(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

begin

Image7.Picture:=Image22.Picture;

end;

procedure TForm1.Image8MouseDown(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

begin

Image8.Picture:=Image21.Picture;

end;

procedure TForm1.Image9MouseDown(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

begin

Image9.Picture:=Image10.Picture;

end;

procedure TForm1.Image3MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

begin

Image3.Cursor:=crHandPoint;

end;

procedure TForm1.Image4MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

begin

Image4.Cursor:=crHandPoint;

end;

procedure TForm1.Image5MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

begin

Image5.Cursor:=crHandPoint;

end;

procedure TForm1.Image6MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

begin

Image6.Cursor:=crHandPoint;

end;

procedure TForm1.Image7MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

begin

Image7.Cursor:=crHandPoint;

end;

procedure TForm1.Image8MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

begin

Image8.Cursor:=crHandPoint;

end;

procedure TForm1.Image9MouseMove(Sender: TObject; Shift: TShiftState; X,

Y: Integer);

begin

Image9.Cursor:=crHandPoint;

end;

procedure TForm1.Image5Click(Sender: TObject);

begin

//Выход

Application.Terminate;

end;

procedure TForm1.Image9Click(Sender: TObject);

var

Reg:TRegistry;

begin

Form1.Visible:=False;

FormCPUSpeed.Visible:=True;

Reg:=TRegistry.Create;

Reg.RootKey:=HKEY_LOCAL_MACHINE;

Reg.OpenKey('\Hardware\DESCRIPTION\System\CentralProcessor\0',False);

FormCPUSpeed.LabelCPUName.Caption:=Reg.ReadString('ProcessorNameString');

Reg.CloseKey;

FormCPUSpeed.BitBtnStart.Click;

end;

procedure TForm1.Image2Click(Sender: TObject);

var

MemInfo : TMemoryStatus;

begin

MemInfo.dwLength := Sizeof (MemInfo);

GlobalMemoryStatus (MemInfo);

FormPamyt.PolnayaFizPamyt.Caption:=IntToStr(MemInfo.dwTotalPhys div 1024);

FormPamyt.DostupnayaFizPamyat.Caption:=IntToStr(MemInfo.dwAvailPhys div 1024);

FormPamyt.ObshayaPodkachka.Caption:=IntToStr(MemInfo.dwTotalPageFile div 1024);

FormPamyt.DostupPodkachka.Caption:=IntToStr(MemInfo.dwAvailPageFile div 1024);

FormPamyt.Pamyt1.Progress := MemInfo.dwAvailPhys div (MemInfo.dwTotalPhys div 100);

FormPamyt.Pamyt2.Progress := MemInfo.dwAvailPageFile div (MemInfo.dwTotalPageFile div 100);

{если значение маленькое меняем цвет на красный}

if (FormPamyt.Pamyt1.Progress < 5) then FormPamyt.Pamyt1.ForeColor := clRed

else FormPamyt.Pamyt1.ForeColor := clActiveCaption;

if (FormPamyt.Pamyt2.Progress < 20) then FormPamyt.Pamyt2.ForeColor := clRed

else FormPamyt.Pamyt2.ForeColor := clActiveCaption;

Form1.Visible:=False;

FormPamyt.Visible:=True;

if (StrToFloat(FormPamyt.PolnayaFizPamyt.Caption)>0)and(StrToFloat(FormPamyt.PolnayaFizPamyt.Caption)<65536) then begin FormPamyt.OcenkaPamyati.Caption:='1';FormPamyt.Label6.Caption:='-балл (Очень слабая)';end;

if (StrToFloat(FormPamyt.PolnayaFizPamyt.Caption)>63488)and(StrToFloat(FormPamyt.PolnayaFizPamyt.Caption)<131072) then begin FormPamyt.OcenkaPamyati.Caption:='2';FormPamyt.Label6.Caption:='-балла (Слабая)';end;

if (StrToFloat(FormPamyt.PolnayaFizPamyt.Caption)>129024)and(StrToFloat(FormPamyt.PolnayaFizPamyt.Caption)<262144) then begin FormPamyt.OcenkaPamyati.Caption:='3';FormPamyt.Label6.Caption:='-балла (Нормальная)';end;

if (StrToFloat(FormPamyt.PolnayaFizPamyt.Caption)>260096)and(StrToFloat(FormPamyt.PolnayaFizPamyt.Caption)<524288) then begin FormPamyt.OcenkaPamyati.Caption:='4';FormPamyt.Label6.Caption:='-балла (Хорошая)';end;

if (StrToFloat(FormPamyt.PolnayaFizPamyt.Caption)>522240)then begin FormPamyt.OcenkaPamyati.Caption:='5';FormPamyt.Label6.Caption:='-баллов (Отличная)';end;

end;

procedure TForm1.Image4Click(Sender: TObject);

var

OsVersion: TOSVersionInfo;

PathArray:Array[0..255] of char;

begin

Form1.Visible:=False;

FormOS.Visible:=True;

//OS

OSVersion.dwOSVersionInfoSize := SizeOf(OSVersion);

if GetVersionEx(OSVersion) then

begin

FormOS.VersionLabel.Caption:= Format('%d.%d (%d.%s)',[OSVersion.dwMajorVersion, OSVersion.dwMinorVersion,(OSVersion.dwBuildNumber and $FFFF), OSVersion.szCSDVersion]);

case OSVersion.dwPlatformID of

VER_PLATFORM_WIN32s: FormOS.VersionNumberLabel.Caption := 'Windows 3.1';

VER_PLATFORM_WIN32_WINDOWS: FormOS.VersionNumberLabel.Caption := 'Windows 95';

VER_PLATFORM_WIN32_NT: FormOS.VersionNumberLabel.Caption := 'Windows NT';

else FormOS.VersionNumberLabel.Caption := '';

end; //of case

end; //of if

FillChar(PathArray, SizeOf(PathArray), #0);

GetWindowsDirectory(PathArray,255);

FormOS.WindowsDirLabel.Caption:= Format('%s',[PathArray]);

FillChar(PathArray, SizeOf(PathArray), #0);

ExpandEnvironmentStrings('%TEMP%', PathArray, 255);

FormOS.TempDir.Caption:=Format('%s',[PathArray]);

if FormOS.VersionNumberLabel.Caption='Windows NT' then

begin

FormOS.OcenkaOC.Caption:='2'; FormOS.Label7.Caption:='-балла(Отличная)'end else

begin FormOS.OcenkaOC.Caption:='1';FormOS.Label7.Caption:='-балл(Старая)';end;

if FormOS.VersionNumberLabel.Caption='Windows NT' then FormOS.WindowsOS.Caption:='NT/2000/XP'else FormOS.WindowsOS.Caption:='95/98/ME';

end;

procedure TForm1.Image3Click(Sender: TObject);

var

i:Integer;

begin

case GetDeviceCaps(Canvas.Handle, TECHNOLOGY) of

DT_PLOTTER: FormDisplay.Memo1.Lines.Add('Тип: Векторный плотер');

DT_RASDISPLAY: FormDisplay.Memo1.Lines.Add('Тип: Растровый дисплей');

DT_RASPRINTER: FormDisplay.Memo1.Lines.Add('Тип: Растровый принтер');

DT_RASCAMERA: FormDisplay.Memo1.Lines.Add('Тип: Растровая камера');

DT_CHARSTREAM: FormDisplay.Memo1.Lines.Add('Тип: Поток символов');

DT_METAFILE: FormDisplay.Memo1.Lines.Add('Тип: Метафайл');

DT_DISPFILE: FormDisplay.Memo1.Lines.Add('Тип: Файл дисплея');

end;

FormDisplay.Memo1.Lines.Add('Ширина в миллиметрах '+IntToStr(GetDeviceCaps(Canvas.Handle, HORZSIZE)));

FormDisplay.Memo1.Lines.Add('Высота в миллиметрах '+IntToStr(GetDeviceCaps(Canvas.Handle, VERTSIZE)));

FormDisplay.Memo1.Lines.Add('Ширина в пикселях '+IntToStr(GetDeviceCaps(Canvas.Handle, HORZRES)));

FormDisplay.Memo1.Lines.Add('Высота в пикселях '+IntToStr(GetDeviceCaps(Canvas.Handle, VERTRES)));

FormDisplay.Memo1.Lines.Add('Количество пикселей на дюйм по горизонтали '+

IntToStr(GetDeviceCaps(Canvas.Handle, LOGPIXELSX)));

FormDisplay.Memo1.Lines.Add('Количество пикселей на дюйм по вертикали '+

IntToStr(GetDeviceCaps(Canvas.Handle, LOGPIXELSY)));

FormDisplay.Memo1.Lines.Add('Количество бит на пиксель '+

IntToStr(GetDeviceCaps(Canvas.Handle, BITSPIXEL)));

FormDisplay.Memo1.Lines.Add('Количество цветовых плоскостей '+

IntToStr(GetDeviceCaps(Canvas.Handle, PLANES)));

FormDisplay.Memo1.Lines.Add('Количество цветов в системной палитре '+

IntToStr(GetDeviceCaps(Canvas.Handle, SIZEPALETTE)));

FormDisplay.Memo1.Lines.Add('Вертискальная частота развёртки '+

IntToStr(GetDeviceCaps(Canvas.Handle, VREFRESH)));

if (GetDeviceCaps(Canvas.Handle, RASTERCAPS) and

RC_BANDING)=RC_BANDING then

FormDisplay.Memo1.Lines.Add('Требуеться сегментация');

if (GetDeviceCaps(Canvas.Handle, RASTERCAPS) and

RC_BITBLT)=RC_BITBLT then

FormDisplay.Memo1.Lines.Add('Может передавать Bitmaps');

if (GetDeviceCaps(Canvas.Handle, RASTERCAPS) and

RC_BITMAP64)=RC_BITMAP64 then

FormDisplay.Memo1.Lines.Add('Поддержка Bitmaps > 64K');

if (GetDeviceCaps(Canvas.Handle, RASTERCAPS) and

RC_DI_BITMAP)=RC_DI_BITMAP then

FormDisplay.Memo1.Lines.Add('Поддержка SetDIBits and GetDIBits');

if (GetDeviceCaps(Canvas.Handle, RASTERCAPS) and

RC_DIBTODEV)=RC_DIBTODEV then

FormDisplay.Memo1.Lines.Add('Поддержка SetDIBitsToDevice');

if (GetDeviceCaps(Canvas.Handle, RASTERCAPS) and

RC_FLOODFILL)=RC_FLOODFILL then

FormDisplay.Memo1.Lines.Add('Can Perform Floodfills');

if (GetDeviceCaps(Canvas.Handle, RASTERCAPS) and

RC_GDI20_OUTPUT)=RC_GDI20_OUTPUT then

FormDisplay.Memo1.Lines.Add('Поддержка Windows 2.0 возможности');

if (GetDeviceCaps(Canvas.Handle, RASTERCAPS) and

RC_PALETTE)=RC_PALETTE then

FormDisplay.Memo1.Lines.Add('Основано на палитке');

if (GetDeviceCaps(Canvas.Handle, RASTERCAPS) and

RC_SCALING)=RC_SCALING then

FormDisplay.Memo1.Lines.Add('Поддержка масштабирования');

if (GetDeviceCaps(Canvas.Handle, RASTERCAPS) and

RC_STRETCHBLT)=RC_STRETCHBLT then

FormDisplay.Memo1.Lines.Add('Поддержка StretchBlt');

if (GetDeviceCaps(Canvas.Handle, RASTERCAPS) and

RC_STRETCHDIB)=RC_STRETCHDIB then

FormDisplay.Memo1.Lines.Add('Поддержка StretchDIBits');

if GetDeviceCaps(Canvas.Handle, CURVECAPS)=CC_NONE then

FormDisplay.Memo1.Lines.Add('Устройство не поддерживает кривые')

else

begin

if (GetDeviceCaps(Canvas.Handle, CURVECAPS) and

CC_CIRCLES)=CC_CIRCLES then

FormDisplay.Memo1.Lines.Add('Поддержка Cirles');

if (GetDeviceCaps(Canvas.Handle, CURVECAPS) and

CC_PIE)=CC_PIE then

FormDisplay.Memo1.Lines.Add('Поддержка Pie Wedges');

if (GetDeviceCaps(Canvas.Handle, CURVECAPS) and

CC_CHORD)=CC_CHORD then

FormDisplay.Memo1.Lines.Add('Поддержка Chords');

if (GetDeviceCaps(Canvas.Handle, CURVECAPS) and

CC_ELLIPSES)=CC_ELLIPSES then

FormDisplay.Memo1.Lines.Add('Поддержка Ellipses');

if (GetDeviceCaps(Canvas.Handle, CURVECAPS) and

CC_WIDE)=CC_WIDE then

FormDisplay.Memo1.Lines.Add('Поддержка Wide Borders');

if (GetDeviceCaps(Canvas.Handle, CURVECAPS) and

CC_STYLED)=CC_STYLED then

FormDisplay.Memo1.Lines.Add('Поддержка Styled Borders');

if (GetDeviceCaps(Canvas.Handle, CURVECAPS) and

CC_WIDESTYLED)=CC_WIDESTYLED then

FormDisplay.Memo1.Lines.Add('Поддержка Wide And Styled Borders');

if (GetDeviceCaps(Canvas.Handle, CURVECAPS) and

CC_INTERIORS)=CC_INTERIORS then

FormDisplay.Memo1.Lines.Add('Поддержка Interiors');

if (GetDeviceCaps(Canvas.Handle, CURVECAPS) and

CC_ROUNDRECT)=CC_ROUNDRECT then

FormDisplay.Memo1.Lines.Add('Поддержка Rounded Rectangles');

end;

if GetDeviceCaps(Canvas.Handle, LINECAPS)=LC_NONE then

FormDisplay.Memo1.Lines.Add('Device Does Not Support Lines')

else

begin

if (GetDeviceCaps(Canvas.Handle, LINECAPS) and

LC_POLYLINE)=LC_POLYLINE then

FormDisplay.Memo1.Lines.Add('Поддержка Polylines');

if (GetDeviceCaps(Canvas.Handle, LINECAPS) and

LC_MARKER)=LC_MARKER then

FormDisplay.Memo1.Lines.Add('Поддержка Markers');

if (GetDeviceCaps(Canvas.Handle, LINECAPS) and

LC_POLYMARKER)=LC_POLYMARKER then

FormDisplay.Memo1.Lines.Add('Поддержка Multiple Markers');

if (GetDeviceCaps(Canvas.Handle, LINECAPS) and

LC_WIDE)=LC_WIDE then

FormDisplay.Memo1.Lines.Add('Поддержка Wide Lines');

if (GetDeviceCaps(Canvas.Handle, LINECAPS) and

LC_STYLED)=LC_STYLED then

FormDisplay.Memo1.Lines.Add('Поддержка Styled Lines');

if (GetDeviceCaps(Canvas.Handle, LINECAPS) and

LC_WIDESTYLED)=LC_WIDESTYLED then

FormDisplay.Memo1.Lines.Add('Поддержка Wide And Styled Lines');

if (GetDeviceCaps(Canvas.Handle, LINECAPS) and

LC_INTERIORS)=LC_INTERIORS then

FormDisplay.Memo1.Lines.Add('Поддержка Interiors');

end;

if GetDeviceCaps(Canvas.Handle, POLYGONALCAPS)=PC_NONE then

FormDisplay.Memo1.Lines.Add('Device Does Not Support Polygons')

else

begin

if (GetDeviceCaps(Canvas.Handle, POLYGONALCAPS) and

PC_POLYGON)=PC_POLYGON then

FormDisplay.Memo1.Lines.Add('Поддержка Alternate Fill Polygons');

if (GetDeviceCaps(Canvas.Handle, POLYGONALCAPS) and

PC_RECTANGLE)=PC_RECTANGLE then

FormDisplay.Memo1.Lines.Add('Поддержка Rectangles');

if (GetDeviceCaps(Canvas.Handle, POLYGONALCAPS) and

PC_WINDPOLYGON)=PC_WINDPOLYGON then

FormDisplay.Memo1.Lines.Add('Поддержка Winding Fill Polygons');

if (GetDeviceCaps(Canvas.Handle, POLYGONALCAPS) and

PC_SCANLINE)=PC_SCANLINE then

FormDisplay.Memo1.Lines.Add('Поддержка Single Scanlines');

if (GetDeviceCaps(Canvas.Handle, POLYGONALCAPS) and

PC_WIDE)=PC_WIDE then

FormDisplay.Memo1.Lines.Add('Поддержка Wide Borders');

if (GetDeviceCaps(Canvas.Handle, POLYGONALCAPS) and

PC_STYLED)=PC_STYLED then

FormDisplay.Memo1.Lines.Add('Поддержка Styled Borders');

if (GetDeviceCaps(Canvas.Handle, POLYGONALCAPS) and

PC_WIDESTYLED)=PC_WIDESTYLED then

FormDisplay.Memo1.Lines.Add('Поддержка Wide And Styled Borders');

if (GetDeviceCaps(Canvas.Handle, POLYGONALCAPS) and

PC_INTERIORS)=PC_INTERIORS then

FormDisplay.Memo1.Lines.Add('Поддержка Interiors');

end;

if (GetDeviceCaps(Canvas.Handle, TEXTCAPS) and

TC_OP_CHARACTER)=TC_OP_CHARACTER then

FormDisplay.Memo1.Lines.Add('Capable of Character Output Precision');

if (GetDeviceCaps(Canvas.Handle, TEXTCAPS) and

TC_OP_STROKE)=TC_OP_STROKE then

FormDisplay.Memo1.Lines.Add('Capable of Stroke Output Precision');

if (GetDeviceCaps(Canvas.Handle, TEXTCAPS) and

TC_CP_STROKE)=TC_CP_STROKE then

FormDisplay.Memo1.Lines.Add('Capable of Stroke Clip Precision');

if (GetDeviceCaps(Canvas.Handle, TEXTCAPS) and

TC_CR_90)=TC_CR_90 then

FormDisplay.Memo1.Lines.Add('Поддержка 90 Degree Character Rotation');

if (GetDeviceCaps(Canvas.Handle, TEXTCAPS) and

TC_CR_ANY)=TC_CR_ANY then

FormDisplay.Memo1.Lines.Add('Поддержка Character Rotation to Any Angle');

if (GetDeviceCaps(Canvas.Handle, TEXTCAPS) and

TC_SF_X_YINDEP)=TC_SF_X_YINDEP then

FormDisplay.Memo1.Lines.Add('X And Y Scale Independent');

if (GetDeviceCaps(Canvas.Handle, TEXTCAPS) and

TC_SA_DOUBLE)=TC_SA_DOUBLE then

FormDisplay.Memo1.Lines.Add('Поддержка Doubled Character Scaling');

if (GetDeviceCaps(Canvas.Handle, TEXTCAPS) and

TC_SA_INTEGER)=TC_SA_INTEGER then

FormDisplay.Memo1.Lines.Add('Поддержка Integer Multiples Only When Scaling');

if (GetDeviceCaps(Canvas.Handle, TEXTCAPS) and

TC_SA_CONTIN)=TC_SA_CONTIN then

FormDisplay.Memo1.Lines.Add('Поддержка Any Multiples For Exact Character Scaling');

if (GetDeviceCaps(Canvas.Handle, TEXTCAPS) and

TC_EA_DOUBLE)=TC_EA_DOUBLE then

FormDisplay.Memo1.Lines.Add('Поддержка Double Weight Characters');

if (GetDeviceCaps(Canvas.Handle, TEXTCAPS) and