Реферат

Реферат Чат по сети

Работа добавлена на сайт bukvasha.net: 2015-10-28

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 11.5.2025





Содержание

Задание                                                                                                  2
Листинг основной программы                                                           3
Листинг программы “Мой комп”                                                      8
Листинг программы “О памяти”                                                         10
Листинг программы “Информация о ОС”                                         12
Листинг программы “Сохранить в файл”                                         15
Листинг программы “отправить по сети”                                         17
Результат работы программы                                                            20
Вывод                                                                                                     21
Список используемой литературы                                                    22
Задание

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

unit Unit1;
interface
uses

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

  Dialogs, IdUDPServer, IdBaseComponent, IdComponent, IdUDPBase,

  IdUDPClient, StdCtrls, Menus,IdSocketHandle, ImgList, ColorGrd;
type

  TForm1 = class(TForm)

    Button1: TButton;

    Button2: TButton;

    Button3: TButton;

    Button4: TButton;

    Button5: TButton;

    Memo1: TMemo;

    Label1: TLabel;

    Button6: TButton;

    Button7: TButton;

    Memo2: TMemo;

    IdUDPServer1: TIdUDPServer;

    Label2: TLabel;

    Label3: TLabel;

    Label4: TLabel;

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    procedure Button3Click(Sender: TObject);

    procedure Button4Click(Sender: TObject);

    procedure Button5Click(Sender: TObject);

    procedure Button6Click(Sender: TObject);

    procedure IdUDPServer1UDPRead(Sender: TObject; AData: TStream;

      ABinding: TIdSocketHandle);

    procedure Button7Click(Sender: TObject);

    procedure Memo2Change(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;
var

  Form1: TForm1;
implementation
uses Unit2, Unit3, Unit4,unit5,unit6;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);

begin

  Close;

end;
procedure TForm1.Button2Click(Sender: TObject);

var

  ms: TMemoryStatus;

begin

  Form2.ShowModal;
end;
procedure TForm1.Button3Click(Sender: TObject);

begin

  Form3.ShowModal;

end;
procedure TForm1.Button4Click(Sender: TObject);

begin

  Form4.ShowModal;

end;
procedure TForm1.Button5Click(Sender: TObject);

begin

form1.Memo1.Lines.AddStrings(form2.Memo1.Lines);

form1.Memo1.Lines.AddStrings(form3.Memo1.Lines);

form1.Memo1.Lines.AddStrings(form4.Memo1.Lines);

form1.Memo1.Lines.SaveToFile('memo.txt');

form1.Label1.Caption:='данные сохранены в файл memo.txt';

end;
procedure TForm1.Button6Click(Sender: TObject);

begin

form5.ShowModal;

label1.Caption:='                         ';

label1.Caption:='данные отправлены';

end;
procedure TForm1.IdUDPServer1UDPRead(Sender: TObject; AData: TStream;

  ABinding: TIdSocketHandle);

var

StringFormatedStream:TStringStream;

s:string;

begin

StringFormatedStream:=TStringStream.Create('');

StringFormatedStream.CopyFrom(AData,AData.Size);

form1.Memo2.Lines.Add(StringFormatedStream.DataString);

ABinding.sendto(ABinding.PeerIP,ABinding.PeerPort,s[1],Length(s));

StringFormatedStream.Free;
end;
procedure TForm1.Button7Click(Sender: TObject);

begin

memo2.Lines.SaveToFile('memo1.txt');

label1.Caption:='                         ';

label1.Caption:='данные приняты';
end;
procedure TForm1.Memo2Change(Sender: TObject);

begin

label2.Caption:='                         ';

label2.Caption:='получены данные';

end;
end.
Листинг программы “ Мой комп ”

unit Unit2;
interface
uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls;

type

TForm2 = class(TForm)

Button1: TButton;

Memo1: TMemo;

procedure FormCreate(Sender: TObject);

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;
var

Form2: TForm2;
implementation

{$R *.dfm}

procedure TForm2.FormCreate(Sender: TObject);

var

ms: TMemoryStatus;

begin

ms.dwLength := sizeof(ms);

GlobalMemoryStatus(ms);

form2.memo1.Lines.Add('Использовано памяти: '+IntToStr(ms.dwmemoryload)+'%');

form2.memo1.Lines.Add( 'Всего '+IntToStr(ms.dwtotalphys)+'байт');

form2.memo1.Lines.Add( 'Свободно '+IntToStr(ms.dwAvailPhys)+'байт');

end;
procedure TForm2.Button1Click(Sender: TObject);

begin

Close;

end;
end.
Листинг программы “ О памяти
unit Unit2;
interface
uses

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

  Dialogs, StdCtrls;
type

  TForm2 = class(TForm)

    Button1: TButton;

    Memo1: TMemo;

    procedure FormCreate(Sender: TObject);

    procedure Button1Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;
var

  Form2: TForm2;

implementation
{$R *.dfm}
procedure TForm2.FormCreate(Sender: TObject);

var

  ms: TMemoryStatus;

begin

  ms.dwLength := sizeof(ms);

  GlobalMemoryStatus(ms);

  form2.memo1.Lines.Add('Использовано памяти: '+IntToStr(ms.dwmemoryload)+'%');

  form2.memo1.Lines.Add( 'Всего '+IntToStr(ms.dwtotalphys)+'байт');

  form2.memo1.Lines.Add( 'Свободно '+IntToStr(ms.dwAvailPhys)+'байт');

end;
procedure TForm2.Button1Click(Sender: TObject);

begin

  Close;

end;
end.

                               


Листинг программы “Информация о ОС

unit Unit3;      
interface
uses

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

  Dialogs, StdCtrls;
type

  TForm3 = class(TForm)

    Button1: TButton;

    Memo1: TMemo;

    procedure Button1Click(Sender: TObject);

    procedure FormCreate(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;
var

  Form3: TForm3;
implementation
{$R *.dfm}
procedure TForm3.Button1Click(Sender: TObject);

begin

  Close;

end;
procedure TForm3.FormCreate(Sender: TObject);

var

  vi: TOSVersionInfo;

  majver: byte;

  minver: byte;

  buildno: word;

  plat: string;

  s: array[0..MAX_PATH] of char;

begin

  vi.dwOSVersionInfoSize := sizeof(vi);

  GetVersionEx(vi);

  majver := vi.dwMajorVersion;

  minver := vi.dwMinorVersion;

  buildno:= Loword(vi.dwBuildNumber);

  form3.Memo1.Lines.Add( 'Версия ОС: '+IntToStr(majver)+'.'+IntToStr(minver)+

                    'build No '+IntToStr(buildno));

  case vi.dwPlatformId of

    VER_PLATFORM_WIN32s: plat := 'Win32s';

    VER_PLATFORM_WIN32_WINDOWS: plat := 'Win95';

    VER_PLATFORM_WIN32_NT: plat := 'WinNT'

  else plat := 'Неизвестная платформа';

  end;

  form3.Memo1.Lines.Add('Платформа: '+plat);

  GetWindowsDirectory(s,sizeof(s));

  form3.Memo1.Lines.Add('Путь к папке; Windows: '+s);

  GetSystemDirectory(s, sizeof(s));

  form3.Memo1.Lines.Add('Путь к системной папке: '+s);

  GetCurrentDirectory(sizeof(s),s);

  form3.Memo1.Lines.Add('Путь к текущей папке: '+s);

end;
end.
Листинг программы “Сохранить в файл”

unit Unit4;
interface
uses

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

  Dialogs, StdCtrls, untSysInfo;
type

  TForm4 = class(TForm)

    Button1: TButton;

    Memo1: TMemo;

    procedure Button1Click(Sender: TObject);

    procedure FormCreate(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;
var

  Form4: TForm4;
implementation
{$R *.dfm}
procedure TForm4.Button1Click(Sender: TObject);

begin

  Close;

end;
procedure TForm4.FormCreate(Sender: TObject);

var

  si: TSystemInfo;

begin

  GetSystemInfo(si);

  form4.Memo1.Lines.Add('Тип процессора (level): '+IntToStr(si.wProcessorLevel));

  form4.Memo1.Lines.Add( 'Частота процессора: '+FloatToStr(GetCPUSpeed)+' MHz');

  form4.Memo1.Lines.Add('Имя компьютера '+GetComputerNetName);

  form4.Memo1.Lines.Add( 'Имя пользователя: '+GetEnvironmentVariable('USERNAME'));

  form4.Memo1.Lines.Add('MAC адрес '+GetMACAddress);

end;

end.

Листинг программы “отправить по сети”

unit Unit5;
interface
uses

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

  Dialogs, StdCtrls, IdBaseComponent, IdComponent, IdUDPBase, IdUDPClient;
type

  TForm5 = class(TForm)

    Label1: TLabel;

    Edit1: TEdit;

    Button1: TButton;

    Button2: TButton;

    IdUDPClient1: TIdUDPClient;

    Edit2: TEdit;

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    procedure Edit1Change(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;
var

  Form5: TForm5;
implementation
uses Unit1;
{$R *.dfm}
procedure TForm5.Button1Click(Sender: TObject);

begin

edit2.Text:=form1.memo1.Lines.CommaText;

idudpclient1.Send(edit2.Text);

end;
procedure TForm5.Button2Click(Sender: TObject);

begin

close;

end;
procedure TForm5.Edit1Change(Sender: TObject);

begin

idudpclient1.Host:=edit1.Text;

end;

end.
Результат работы программы





Вывод

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

1.    Методическое пособие по вычислительным процессам

2.    Delphi глазами программиста

3.    Библия Delphi

4.    Delphi  для начинающих

1. Диплом на тему Управленческий учет внутренний аудит и анализ расходов на оплату труда на предприятии
2. Реферат Симпосиарх
3. Реферат на тему Алкоголь и его отрицательное действие на организм
4. Контрольная работа на тему Наука природопользования Экологический контроль и аудит
5. Реферат История болезни инфекционный мононуклеоз
6. Реферат на тему Where Have They Gone Essay Research Paper
7. Реферат на тему Hale A Woodruff Essay Research Paper At
8. Кодекс и Законы Наложение административных взысканий
9. Реферат на тему The Diversity Myth Essay Research Paper The
10. Курсовая Особенности развития зрительной памяти у старших дошкольников с общим недоразвитием речи