Программу, которая показывает основные ресурсы компьютера

Автор работы: Пользователь скрыл имя, 11 Февраля 2013 в 11:58, реферат

Краткое описание

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

Прикрепленные файлы: 1 файл

Аннотация.doc

— 458.00 Кб (Скачать документ)

тренинг.

Основные  требования по назначению:

1 .Программа  должна быть удобной для пользователя

2.Программа  должна быть легко управляемой

3.Программа  должна иметь красивое оформление Реализация: Программа написана с использованием:

> Операционная система Microsoft Windows XP 
>  Среда программирования Borland Delphi 7.0

  • Язык программирования Delphi Ресурсные ограничения:
  • Операционная система Microsoft Windows 98-XP
  • IBM PC совместимый компьютер

 

 

 

 

Технический проект

Структура данных

Все данные содержатся непосредственно в самом компьютере и операционной системе, программа только вызывает необходимые данные используя специальные операторы.

Данные об основных объектах в программе

Текст программы:

unit Unit1;(основное окно программы)

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, Registry, Menus, ShellAPI, MMSystem, StdCtrls, Buttons, MPlayer,

  ComCtrls, ExtCtrls, IniFiles;

 

 

 

type

  TMainProgram = class(TForm)

    MainMenu1: TMainMenu;

    N1: TMenuItem;

    N7: TMenuItem;

    N2: TMenuItem;

    N14: TMenuItem;

    StatusBar1: TStatusBar;

    Timer1: TTimer;

    Calculator: TBitBtn;

    cmd: TBitBtn;

    Explorer: TBitBtn;

    Notepad: TBitBtn;

    SReestr: TBitBtn;

    Label2: TLabel;

    Label3: TLabel;

    Label4: TLabel;

    Label5: TLabel;

    Label6: TLabel;

    Label7: TLabel;

    Label8: TLabel;

    Label9: TLabel;

    Label10: TLabel;

    Button1: TButton;

    procedure N7Click(Sender: TObject);

    procedure N2Click(Sender: TObject);

    procedure N14Click(Sender: TObject);

    procedure Timer1Timer(Sender: TObject);

    procedure CalculatorClick(Sender: TObject);

    procedure ExplorerClick(Sender: TObject);

    procedure cmdClick(Sender: TObject);

    procedure NotepadClick(Sender: TObject);

    procedure SReestrClick(Sender: TObject);

    procedure N19Click(Sender: TObject);

    procedure FormClose(Sender: TObject; var Action: TCloseAction);

    procedure FormCreate(Sender: TObject);

    procedure Button1Click(Sender: TObject);

     

 

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  MainProgram: TMainProgram;

  n :longint;

  cr:string;

  ct: string;

 

implementation

uses Unit2, Unit3, Unit4, Unit5, Unit6, Unit7, Unit8;

{$R *.dfm}

 

 

 

procedure TMainProgram.N7Click(Sender: TObject);

begin

Form6.ShowModal;

end;

 

procedure TMainProgram.N2Click(Sender: TObject);

begin

Form7.ShowModal;

end;

 

procedure TMainProgram.N14Click(Sender: TObject);

begin

Form8.ShowModal;

end;

 

procedure TMainProgram.Timer1Timer(Sender: TObject);

begin

StatusBar1.Panels[0].Text:=DateToStr(Now);

StatusBar1.Panels[1].Text:=TimeToStr(Now);

 

Label4.Caption:=DateTostr(Now);

Label5.Caption:=TimeToStr(Now);

end;

 

procedure TMainProgram.CalculatorClick(Sender: TObject);

begin

WinExec('calc.exe', SW_SHOWNORMAL);

end;

 

procedure TMainProgram.ExplorerClick(Sender: TObject);

begin

WinExec('explorer.exe', SW_SHOWNORMAL);

end;

 

procedure TMainProgram.cmdClick(Sender: TObject);

begin

WinExec('cmd.exe', SW_SHOWNORMAL);

end;

 

procedure TMainProgram.NotepadClick(Sender: TObject);

begin

WinExec('notepad.exe', SW_SHOWNORMAL);

end;

 

procedure TMainProgram.SReestrClick(Sender: TObject);

begin

WinExec('regedit.exe', SW_SHOWNORMAL);

end;

 

procedure TMainProgram.N19Click(Sender: TObject);

begin

Form5.ShowModal;

end;

 

procedure TMainProgram.FormCreate(Sender: TObject);

var cfProg: TIniFile;

 

begin

cfProg:=TIniFile.Create(ExtractFilePath(Application.ExeName)+'prog.ini');

n:=cfProg.ReadInteger('START', 'CountStart', 0);

Label7.Caption:=IntToStr(n+1);

cr:=cfProg.ReadString('START', 'LastDate', DateToStr(Date));

Label9.Caption:=DateToStr(Date);

ct:=cfProg.ReadString('START', 'LastTime', TimeToStr(Now));

Label10.Caption:=TimeToStr(Now);

     end;

 

procedure TMainProgram.FormClose(Sender: TObject; var Action: TCloseAction);

var cfProg: TIniFile;

 

begin

cfProg:=TIniFile.Create(ExtractFilePath(Application.ExeName)+'prog.ini');

cfProg.WriteInteger('START', 'CountStart', n+1);

cfProg.WriteInteger ('AlexTimer', 'Top', Top);

        cfProg.WriteInteger ('AlexTimer', 'Left', Left);

        cfProg.WriteInteger ('AlexTimer', 'Width', Width);

        cfProg.WriteInteger ('AlexTimer', 'Height', Height);

      cfProg.WriteString('START', 'LastDate', DateToStr(Date));

cfProg.WriteString('START', 'LastTime', TimeToStr(Now));

 

cfProg.Free;

end;

 

procedure TMainProgram.Button1Click(Sender: TObject);

begin

MainProgram.Close;

end;

 

end.

 

unit Unit8;(окно “информация”)

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, ExtCtrls, StdCtrls, IniFiles, Registry;

 

type

  TForm8 = class(TForm)

    Label1: TLabel;

    Label16: TLabel;

    Label2: TLabel;

    Label17: TLabel;

    Label3: TLabel;

    Label18: TLabel;

    Label4: TLabel;

    Label19: TLabel;

    Label5: TLabel;

    Label20: TLabel;

    Label6: TLabel;

    Label21: TLabel;

    Label7: TLabel;

   Label22: TLabel;

    Label8: TLabel;

    Label23: TLabel;

    Label9: TLabel;

    Label24: TLabel;

    Label37: TLabel;

    Label38: TLabel;

    Label10: TLabel;

    Label25: TLabel;

    Label11: TLabel;

    Label26: TLabel;

    Label12: TLabel;

    Label27: TLabel;

    Label33: TLabel;

    Label34: TLabel;

    Label15: TLabel;

    Label30: TLabel;

    Label35: TLabel;

    Label36: TLabel;

    Label31: TLabel;

    Label32: TLabel;

    Timer1: TTimer;

    procedure Timer1Timer(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  Form8: TForm8;

 

implementation

 

{$R *.dfm}

 

procedure TForm8.Timer1Timer(Sender: TObject);

var

  MS: TMemoryStatus;

  Reestr: TRegistry;

  BuildNumber: Integer;

 

  begin

 

GlobalMemoryStatus(MS);

Label23.Caption :=FormatFloat('#,###" KB"', MS.dwTotalPhys / 1024);

Label24.Caption :=Format('%d %%', [MS.dwMemoryLoad]);

Label17.Caption:=IntToStr(DiskSize(3) div 1024)+'  KB';

Label18.Caption:=IntToStr(DiskFree(3) div 1024)+'  KB';

Label19.Caption:=IntToStr(DiskSize(4) div 1024)+'  KB';

Label20.Caption:=IntToStr(DiskFree(4) div 1024)+'  KB';

Label21.Caption:=IntToStr(DiskSize(5) div 1024)+'  KB';

Label22.Caption:=IntToStr(DiskFree(5) div 1024)+'  KB';

Label30.Caption:=TimeToStr(Now);

Label36.Caption:=DateToStr(Now);

 

  case Win32Platform of

    VER_PLATFORM_WIN32_WINDOWS:

      begin

          Reestr := TRegistry.Create;

Reestr.RootKey := HKEY_LOCAL_MACHINE;

if

Reestr.OpenKey('SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION', False) then begin

Label16.Caption:= Reestr.ReadString('RegisteredOwner');

Label25.Caption:= Reestr.ReadString('CurrentVersion');

Label26.Caption:= Reestr.ReadString('CurrentBuildNumber');

Label27.Caption:= Reestr.ReadString('Productid');

Label32.Caption:= Reestr.ReadString('RegisteredOrganization');

Label34.Caption:= Reestr.ReadString('PathName');

Label38.Caption:= Reestr.ReadString('ProductName');

      end;

      end;

    VER_PLATFORM_WIN32_NT:

      begin

     Reestr := TRegistry.Create;

Reestr.RootKey := HKEY_LOCAL_MACHINE;

if

Reestr.OpenKey('SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION', False) then begin

Label16.Caption:= Reestr.ReadString('RegisteredOwner');

Label25.Caption:= Reestr.ReadString('CurrentVersion');

Label26.Caption:= Reestr.ReadString('CurrentBuildNumber');

Label27.Caption:= Reestr.ReadString('Productid');

Label32.Caption:= Reestr.ReadString('RegisteredOrganization');

Label34.Caption:= Reestr.ReadString('PathName');

Label38.Caption:= Reestr.ReadString('ProductName');

end;

      end;

      else

      begin

      Label16.Caption:='Данная ОС неизвестна программе';

      end;

  end;

end;

 

 

 

 

end.

 

 

Скриншот выглядит следующим образом:



 

 

 

 

 

Тестирование  программы:

При тестирование программы ошибок обнаружено не было. Руководство пользователя:

Для получения  отчета необходимо из главного меню выбрать  пункт подменю “информация о системе и пользователь”. Из главного окна программы есть быстрый доступ к Калькулятору, Блокноту, Проводнику, Командной строке и Реестру Windows. При выборе пункта меню “О разработчике” выводиться информация о разработчике программы.

Заключение:

При работе на данной курсовой работе я  изучил основы работы с Delphi. Научился разрабатывать собственные программы, использовать не стандартный компонент. Полученные знания несомненно пригодятся мне в дальнейшей работе.

 


Информация о работе Программу, которая показывает основные ресурсы компьютера