Реферат

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

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

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

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

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

от 25%

Подписываем

договор

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

Скидка 25% при заказе до 17.2.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. Реферат Радиационная безопасность 3
2. Реферат Инфраструктура розничной торговли
3. Реферат Исследования и разработки в области фуллеренов в России опыт наукометрического анализа
4. Реферат на тему High And Low Displacement Engines Essay Research
5. Статья на тему Язык семьи орудие нравственного совершенствования и духовного спасения
6. Статья на тему Педагогическое мастерство преподавателя ВУЗа
7. Реферат на тему Child Develoment Essay Research Paper Thearticles The
8. Сочинение Язык рассказа Николая Лескова Левша
9. Реферат Нормативно-правовые акты РФ
10. Статья Влияние индивидуально-психологических качеств футболистов на уровень их технической и физической