soket能和indy互相通讯吗

iwillgo2 2003-09-16 04:37:36
我用serversocket做服务端,IdTCPClient做客户端,IdTCPClient.Connect;是客户端程序就死掉了,但serversocket能接收到它的连接。我想问soket能和indy怎样才能进行通讯?
...全文
53 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
cx_super 2003-10-27
  • 打赏
  • 举报
回复
谢谢halfdream(哈欠)
Wally_wu 2003-10-17
  • 打赏
  • 举报
回复
可以, Indy也是从Windows Socket 继承下来的。
cnsolonet 2003-10-16
  • 打赏
  • 举报
回复
可以的,它们都是通过TCP/IP进行通信的,与控件无关。
halfdream 2003-10-16
  • 打赏
  • 举报
回复
TO:cx_super(黄连),大部分手机是支持UTF8编码,试试编码转换一下。
cx_super 2003-10-16
  • 打赏
  • 举报
回复
我使用过java,delphi的socket测试过,都能通讯。不过在和手机通讯,出现中文问题。不知道谁解决了。
halfdream 2003-10-07
  • 打赏
  • 举报
回复
1.。。。。。clientsocket.socket.senttext('sss'),服务器并没有收到消息,也就是说没有触发Execute事件,为什么

不大可能不触发EXECUTE事件的。。。

我想可能性只有一点,你客户端并未正确执行。。
也就是当非阻塞方式下面,
tclientSocket未等连接成功就调用Sendtext造成发送失败。

2,INDY TCP服务控件每个EXECUTE事件都在独立的线程中执行的。。
只要处理的时候,哪儿来的哪儿去,就行。
要唯一判断是哪个客户端连接,可以用对端的IP和端口判断。



ming709 2003-09-23
  • 打赏
  • 举报
回复
up
iwillgo2 2003-09-17
  • 打赏
  • 举报
回复
1.用idtcpserver做服务器端,clientsocket做客户端,客户端连接服务器时,我在服务器端想客户端发出一条应答消息(在Connect事件中),客户端可以收到这条信息,但是clientsocket.socket.senttext('sss'),服务器并没有收到消息,也就是说没有触发Execute事件,为什么

2.服务器端如何区分不同的客户端,想向某一个客户端发信息,如何做?
XXSingle 2003-09-17
  • 打赏
  • 举报
回复
up
iwillgo2 2003-09-17
  • 打赏
  • 举报
回复
to starcbh:
你是说第一点不可能吗,这是我测试的结果啊
starcbh 2003-09-17
  • 打赏
  • 举报
回复
……
1。不可能。
2。自已加一个Context对象,indy10已经有了。

Socket和indy当然能通信了,都是socket做的,这都不知道。

不过前提是indy端不能使用intercept(拦截者)
xoyo5678 2003-09-16
  • 打赏
  • 举报
回复
可以,我曾经这样做过。因为ServerSocket默认是非阻塞(NonBlocking)式的,而Indy的IdTCPClient是阻塞式的,所以客户端会出现死机现象。解决方法:在客户端加入一个IdAntiFreeze控件即可。不知道有没有说清楚。

1,594

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧