关于ICS/TWSocket数据接收和发送!!!(100分)

  • 主题发起人 主题发起人 Neo_leaf
  • 开始时间 开始时间
N

Neo_leaf

Unregistered / Unconfirmed
GUEST, unregistred user!
WsUDP: TWSocket;
---------------------
var
ArrCmd : array of Byte;

发送数据:
WsUDP.Close;
WsUDP.LocalAddr := '192.168.X.37';
WsUDP.LocalPort := '8002';
WsUDP.Addr := '192.168.X.251';
WsUDP.Port := '8001';
WsUDP.Proto := 'UDP';
WsUDP.Connect;
WsUDP.Send(ArrCmd,Length(ArrCmd));
---这里发送数据,机器接收都没问题;

接收数据过程(大富翁论坛上得知):
procedure TFrm1.WsUDPDataAvailable(Sender: TObject; ErrCode: Word);
var
ArrRcv : array of byte;
begin
if ErrCode<>0 then
exit;
SetLength(ArrRcv,WsUDP.RcvdCount);
WsUDP.Receive(ArrRcv,Length(ArrRcv));
end;
--程序经常不执行到这里,不知怎么办了,
不知道有什么办法自己手动触发OnDataAvailable事件??
请各位帮忙,
多谢了,
环境:WinXp + BDS2006.
 
procedure TFrm1.WsUDPDataAvailable(Sender: TObject; ErrCode: Word);
var
ArrRcv : array of byte;
begin
if ErrCode<>0 then
exit;
SetLength(ArrRcv,WsUDP.RcvdCount);
WsUDP.Receive(ArrRcv,Length(ArrRcv));
end;
有误
 
procedure TFrm1.WsUDPDataAvailable(Sender: TObject; ErrCode: Word);
var
ArrRcv : array of byte;
begin
if ErrCode<>0 then
exit;
SetLength(ArrRcv,WsUDP.RcvdCount);
WsUDP.Receive(ArrRcv,Length(ArrRcv));
end;
有误
-----------
有什么误啊,
别只说这么两个字好吗,老兄!!??
 
问题: ICS中wsocket的接收数据怎么使呀?(100大洋,好拿,好拿) ( 积分: 100 )
分类: Internet/TCPIP

来自: Bigsun, 时间: 2002-01-24 11:50:00, ID: 881733
偶在
代码:
wsocket
代码:
ondateavailable
事件中
代码:
str := wsocket.receivestr
了一把(没有其他的代码),
但是
代码:
str = ''
发送端是没问题的,因为用别的控件能收到发送端发过来的消息
问,是不是偶的
代码:
wsocket
用法不对呀?

来自: superpage, 时间: 2002-01-24 16:19:00, ID: 882434
在str := wsocket.receivestr以前请确保wsocket.connect;

来自: Bigsun, 时间: 2002-01-24 16:23:00, ID: 882451
接受答案了.

得分大富翁: superpage
 
我有做wsocket.connect啊,
晕,这个肯定有做了,
 
多人接受答案了。
 
后退
顶部