Здравствуйте
Мне нужно организовать обмен массивами типа unsigned char между приложением и контроллером через Ethernet. То есть "в сети" будет всегда 1 клиент и 1 сервер.
Столкнулся со следующей проблемой:
При создании приложения на VCL для передачи массивов типа char пользовался указанными в названии темы компонентами
ServerSocket1->Socket->Connections[0]->SendBuf(Message,MessLenght)
void __fastcall TfrmMain::ServerSocket1ClientRead(TObject *Sender, TCustomWinSocket *Socket)
{
RecLenght = Socket->ReceiveLength();
Socket->ReceiveBuf(RecBuffer,RecLenght);
}
Сейчас пишу аналогичное приложение на FireMonkey, и тут указанных компонентов нет.. Попробовал заморочиться с Indy (IdCmdTCPServer1, IdCmdTCPClient1) - пока получается только отправить/получить String, и то как-то неудобно и муторно..
MyContext->Connection->IOHandler->WriteLn("lala");
AContext->Connection->IOHandler->ReadLn();
Попробовал через TcpClient1... От клиента серверу строка уходит, от сервера клиенту - нет.. (для начала строку хотя бы стараюсь ловить)
TcpClient1->Sendln("1223"); //работает
TcpServer1->Sendln("asd"); //не работает
Подскажите пожалуйста, есть ли "заменитель" TServerSocket TClientSocket в FireMonkey? Или может чем ещё можно решить мою задачу.. Или хоть как это сделать через Indy?..
Заранее спасибо!