不知大家在Socket的创建及使用中是否遇到过这个问题?(100分)

  • 主题发起人 主题发起人 蜡笔小小新
  • 开始时间 开始时间

蜡笔小小新

Unregistered / Unconfirmed
GUEST, unregistred user!
我自己创建一个TClientSocket实例,然后向一个指定的地址发信息,当我这个实例在窗体的Create事件中创建时,用按钮发送时信息能够发送出去,而我直接在按钮中创建在发送时却发送不出去,不知为什么?代码如下:
创建代码
Socket1:=TClientSocket.Create(Nil);
Socket1.Host:='192.168.0.112';
Socket1.Port:=1024;
Socket1.ACtive:=true;
发送代码
Socket1.Socket.Sendtext('发送信息');
当我把创建和发送代码分开写时可以发送能收到信息,而放在一起写时却收不到信息。
请各位高手帮忙!!谢谢!!
 
在发送前加上以下语句就可以
Socket1.ClientType := ctBlocking;
 
这样发送时可以拉,但是却能接收信息。
 
你接收的代碼在那裡?在那個事件觸發的?怎麼不見有事件的?
 
默认是异步模式,所以你active:=true; 后马上就发送是不行的,因为此时还未真正的建立连接,你应该在 onwrite中发送,或者用阻塞模式.
 
后退
顶部