Искать:



на сайте
в интернете

 

Готовые программы | Командная строка | Чат | Авторам | Наши баннеры
Гостевая книга | Форум | Послать E-mail | Добавить свою работу | JavaScript

 КОМПОНЕНТЫ TNMMSG И TNMMSGSERV [закладка FastNet] 

Добро пожаловать на сайт
для настоящих программистов!

Эти компоненты обмениваются простыми текстовыми сообщениями в кодах ASCII по Интернет или Интранет с использованием протокола TCP/IP. Вы можете использовать их для создания чата или или для программы переговоров в локальной сети. 


На компьютере, куда будут посылаться сообщения, должен быть запущен TNMMsgServ. Для того, чтобы компонент TNMMsg смог отправить сообщение, вам нужно в свойстве Host указать удалённый компьютер, на котором находится серверная часть приложения. Это может быть имя или IP-адрес. Кроме этого значение свойства Port компонента TNMMsg должно соответствовать значению этого же свойства компонента TNMMsgServ. Стандартный порт, который слушает этот компонент, имеет номер 6711. В свойстве FromName укажите имя своего компьютера, чтобы получатель мог знать от кого получено сообщение. После определения этих свойств, вы можете отправить сообщение, вызвав метод PostIt. Если метод выполняется успешно генерируется событие OnMessageSent. У этого компонента только 1 свой метод - остальные наследуются. Свойство FromName - тоже единственное своё. 

Компонент TNMMsgServ предназначен для получения сообщений, отправленных компонентом TNMMsg. У него нет своих свойств и методов, только унаследованные. Главное событие серверного компонента - OnMsg. возникает оно при получении сообщения, текст которого передаётся обработчику события через параметр sMsg. Другой параметр этого обработчика sFrom содержит имя отправителя.

Пример:

Для этого примера вам нужно создать новое приложение Delphi и вынести на форму 3 метки (TLabel) и 3 поля ввода (TEdit), 1кнопку и 2 Memo. Кроме того в форму нужно добавить компоненты TNMMsgServ и TNMMsg. Первый будет принимать сообщения, второй - посылать. Доведите форму до состояния, показанного на рисунке.



По нажатию на кнопку напишите следующий код:

NMMsg1.FromName:=Edit2.Text;
NMMsg1.Host:=Edit3.Text;
NMMsg1.PostIt(Edit1.Text); 

Для компонента TNMMsgServ событие OnMsg опишите так

Memo1.Lines.Add('Получено сообщение от '+sFrom);
Memo2.Lines.Add('['+sFrom+'] '+sMsg); 

Здесь Memo1 используется для ведения протокола, а в Memo2 будут отображаться сообщения в формате "[отправитель] сообщение"

Для компонента TNMMsg опишите событие OnMessageSent:

Memo1.Lines.Add('Отправлено сообщение от '+DateTimeToStr(Now)); 

В этом обработчике будет отслеживаться дата и время отправления сообщения.
<<Назад На главную

Автор и дизайн сайта: DeeCo
Copyright © 2002-2003

Сайт создан в системе uCoz