我试图编写一个实验性的服务器程序,它接受连接并向客户端发送消息。我得到了客户端连接,但我似乎无法发送消息,却没有做出奇怪的事情。Winsock的send()奇怪地工作
例如,在此剪断,conn
是连接插座:
int sendRes;
char buf[1024];
strcpy_s(buf,"Testing!");
sendRes = send(conn,buf,strlen(buf),0);
好吧,当我通过Telnet连接到它,它不显示任何内容,只是退出。但是,当我将
cout << sendRes
行添加到此剪辑的末尾时,它突然生效并显示
测试! Telnet上的,就像它应该的一样。
因此,我想问任何知道的人,为什么这样做?
我假设你在你的应用程序中调用shutdown和closesocket?在调用关机之前可能不会发送一些数据。还要检查WireShark或Netmon的线路。 – 2011-03-26 07:56:54