void CTestCSocketDlg::OnButton1()
{
CSocket sockSend;
char szSend[20]="Send data"; sockSend.Create();
int iSend=sockSend.SendTo(szSend,10,5801,"127.0.0.1",0);
AfxMessageBox("No Block");
}
CSocket是阻塞的,这是很多书上说的,为什么上面阻塞呢???还是现实对话框 AfxMessageBox("No Block");多谢了。
{
CSocket sockSend;
char szSend[20]="Send data"; sockSend.Create();
int iSend=sockSend.SendTo(szSend,10,5801,"127.0.0.1",0);
AfxMessageBox("No Block");
}
CSocket是阻塞的,这是很多书上说的,为什么上面阻塞呢???还是现实对话框 AfxMessageBox("No Block");多谢了。
一进来就看到LZ的帖子了。
权你先下载个别人的最简单的例子在你机器上编译运行下试试,看看是不是一样的。
我以前也遇到过类似的问题,结果是我的机器中毒了,我把winsock修复下就好了。
{
if(GetLastError() == EWOULDBLOCK)
AfxMessageBox("No Block");
}
这句SendTo执行完毕了。
注意:阻塞的意思是:SendTo函数必须执行完返回后,才接着执行下面的代码
你的SendTo函数执行完了,但是失败的。
SendTo/Send函数并不是想Accept和Receive那样,一直停着等待数据的到来