大家帮我看看关于ServerSocket,以及Indy9控件的问题

Andrionda Andrionda 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
小弟做想用ServerSocket控件实现一个小功能(服务器的连接数我设置为10),就是当客户机连接上以后,我判断客户机发送过来的数据(一个结构体),如果属于自己的数据包,服务器就再打包一个数据包传给客户端。
小弟对ServerSocket不熟悉,我看好些例子都是服务器接受数据时在onClientRead事件里写入:Memo->Lines->Add(Socket->ReceiveText()).如果我要接收数据包的话,是否就应该Socket->ReceiveBuf(&nData,sizeof(NetData));(其中nData为我定义的一个结构体)。 这样写如果多个客户端进行连接,数据会不会发送混乱。还是应该在服务器端用线程进行数据检测及发送?(见笑了) 哪个朋友那里有关于该控件收发数据包的例子能给我传一份吗?小弟万分感谢 呵呵!
还有一个小问题,小弟用Indy9的时候,比如:
AnsiString ClientPort = IntToStr(AThread->Connection->Socket->Binding->PeerPort);
编译的时候,系统老提示:E2316 'Socket' is not a member of 'TIdTCPServerConnection'。 放了一个TIdTcpServer控件上去,在Properties里明明有一个ListenQueue属性,但是->的时候却出不来,不知道怎么回事。还希望大家不吝赐教。

plyat@163.com
...全文

相关推荐

评论 3
收藏 已收藏
分享
返回顶部