首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

请问:edit组件怎么显示IP地址

2012-10-14 
请教:edit组件如何显示IP地址各位好!我刚开始尝试学习C++ Builder,正在用TIdTCPClient组件和TIdTCPServer

请教:edit组件如何显示IP地址
各位好!
我刚开始尝试学习C++ Builder,正在用TIdTCPClient组件和TIdTCPServer组件做一个socket通信程序。

请问,服务器端,打算用edit组件显示服务器端自身的IP和Port。
代码如下:
edtIP->Text=IdTCPServer->Bindings->Items->IP;
edtPort->Text=IdTCPServer->Bindings->Items->Port;

提示错误:
E2193 
Too few parameters in call to '_fastcall TIdSocket Handles::GetItem(int)';

应该如何修改呢?

还有,当有多个客户端连接到服务器时,将所有已连接的客户端用ListBox组件显示出来,我打算实现一个功能:从列表中鼠标选中某个客户端,然后从服务器端主动断开与其的连接。
这个要怎么实现呢?



[解决办法]
IdTCPServer可以绑定多个IP地址和端口,所以获取的时候需要指定显示第几个配置,如:

C/C++ code
edtIP->Text = IdTCPServer1->Bindings->Items[0]->IP;edtPort->Text = IdTCPServer1->Bindings->Items[0]->Port;
[解决办法]
调用 IdTCPServer 的 Threads或Contexts的LockList方法,会返回一个客户端连接的列表对象,通过这个列表对象就可以遍历所有连接的客户端,包括断开其连接。

热点排行