Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Сети > TIdCmdTCPServer и TIdCmdTPCClient


Автор: dvamaster 11.4.2007, 05:16
Доброго времени суток!

Что делать после коннекта в TIdCmdTCPServer и TIdCmdTPCClient.

из TIdCmdTPCClient передаю команду но вылетает мессага с надписью Welcome.
такое в печатление что TIdCmdTCPServer передает Welcome после коннекта.

Вообще можете показать пример как работать с ними, используя TIdCommandHandler

Автор: Snowy 11.4.2007, 11:31
Вызываешь редактор хэндлера.
Сознаёшь новый элемент.
Там прописываешь комманду, по которой он срабатывает и евент при получении этой комманды.
В http://snowy.delphist.com/books/#indy всё расписано подробней и с примерами

Добавлено через 33 секунды
Цитата(dvamaster @  11.4.2007,  05:16 Найти цитируемый пост)
передает Welcome после коннекта.
Это тоже настраивается в проперти Greeting

Автор: salik 29.1.2011, 20:24
Начал разбираться с Indy и столкнулся с тойже проблемой. 

Запускаю сервер:
Код

procedure TForm1.Button4Click(Sender: TObject);
begin
   IdCmdTCPServer1.Active := True;
   CheckBox3.Checked :=  IdCmdTCPServer1.Active;
end;

 
подключаю клиента:
Код

procedure TForm1.Button1Click(Sender: TObject);
begin
  IdCmdTCPClient1.Connect;
end;


 Получаю следующий лог:
Код

CEvent подключен
SEvent192.168.1.2:50250 Stat Connected.
SEvent192.168.1.2:50250 Sent 29.01.2011 19:57:37: 200 Welcome<EOL>


Как и написал "dvamaster" - сервер посылает сообщение.
Я так понимаю клиент должен его принять, но как, когда и где?!

Клиент находится в состоянии приема данных. Это следует из ошибки по "ReadTimeout", если сие запустить со значением отличным от -1.

Автор: Snowy 1.2.2011, 02:43
Комманды принимает CommandHandler.
Комманды прописываешь сам - на какие реагировать.
Найди в свойствах хэндлер и добавь в него комманды.
Что касается Welcome - Это Greating - настраивается в свойствах сервера.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)