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

请教BCB的Socket组件在数据成功发送后会触发类似MFC中OnSend事件吗

2012-02-07 
请问BCB的Socket组件在数据成功发送后会触发类似MFC中OnSend事件吗?对于Clientsocket的OnWrite也不是很明

请问BCB的Socket组件在数据成功发送后会触发类似MFC中OnSend事件吗?
对于Clientsocket的OnWrite也不是很明白,BCB说   should   write   information   o   the   socket   connection时发生,但只是在连接成功时调用了一次,发送数据后就不再调用了.
发送成功就没有事件触发了吗?

[解决办法]
TCustomWinSocket::SendBuf

可以在一个Windows Socket 对象的OnSocketEvent事件或者一个socket组件的OnWrite , OnClientWrite事件中调用这个方法向socket连接中写入数据.
对于非阻塞sockets,数据被发送到winsock dll的内部缓存中,如果winsock能接受额外的数据,SendBuf会立即返回,如果winsock不能接受,SendBuf会返回-1,在这种情况下,需要延时让winsock有机会将已经在队列里面的数据发出去.
对于阻塞sockets,返回的是实际写入socket连接的字节数.

热点排行