CSocket netdata;
if (netdata.Connect("192.168.0.77",4660));
{
MessageBox("connected success",NULL,MB_OK);
}
int i;
char m_re[1500];
int leng;
char aa;
UpdateData(true);
leng=netdata.Receive(m_re,1500,0);
for(i=0;i<leng;i++)
{
aa=*(m_re+i);
m_NetData=m_NetData+aa;
} UpdateData(false);
我telnet 192.168.0.77 4660 端口,是有数据的,但是我的程序接收不到,大家看看是怎么回事啊?
if (netdata.Connect("192.168.0.77",4660));
{
MessageBox("connected success",NULL,MB_OK);
}
int i;
char m_re[1500];
int leng;
char aa;
UpdateData(true);
leng=netdata.Receive(m_re,1500,0);
for(i=0;i<leng;i++)
{
aa=*(m_re+i);
m_NetData=m_NetData+aa;
} UpdateData(false);
我telnet 192.168.0.77 4660 端口,是有数据的,但是我的程序接收不到,大家看看是怎么回事啊?
在CYourSocket类的OnReceive函数中发消息(或者调用函数)通知其他的函数接收数据。
调用Connect()和Receive()之后应该检查返回值的
收够1500或者连接关闭时才会退出Receive()
不过我觉得你用telnet来测试想法挺好。
在CYourSocket类的OnReceive函数中发消息(或者调用函数)通知其他的函数接收数据从你的程序中看得出你目前最大的问题是因为你对CSocket类的用法不熟,最好是把MSDN
里面的那个用CSocket实现的聊天室程序例子看看先!
后connect
同时connect()后并不能保证已经连接成功。在onConnect事件中判断连接成功否