EVC udp? 本帖最后由 VisualEleven 于 2010-12-07 17:35:37 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 以前版本的EVC只支持 socket1.1,新版的没了解函数recvfrom会立即返回. http://topic.csdn.net/u/20101208/08/921658cf-f7f3-45d9-9478-726fe93cb15f.htmlBOOL Udp::SetMulticast(PCSTR textIP){ int error = 0; int i_val = 0; // 设置多播和广播 if ( IN_MULTICAST(ntohl(inet_addr(textIP))) ) { i_val = 1; error = setsockopt(m_Socket, IPPROTO_IP, IP_MULTICAST_LOOP, (char*)&i_val, sizeof(i_val) ); if (error == SOCKET_ERROR) { ReportError(); return FALSE; } ip_mreq multicastAddr; multicastAddr.imr_multiaddr.s_addr = inet_addr(textIP); multicastAddr.imr_interface.s_addr = htonl(INADDR_ANY); error = setsockopt(m_Socket, IPPROTO_IP, IP_ADD_MEMBERSHIP, (char*)&multicastAddr, sizeof(multicastAddr)); if (error == SOCKET_ERROR) { ReportError(); return FALSE; } } //设置广播 if ( inet_addr(textIP) == INADDR_BROADCAST ) { i_val = 1; error = setsockopt( m_Socket, SOL_SOCKET, SO_BROADCAST, (char*)&i_val, sizeof(i_val) ); if (error == SOCKET_ERROR) { ReportError(); return FALSE; } } return TRUE;} MFC中用户管理怎么在一个对话框里添加信息,同时给两个表插入数据 不想做IT了。想回家养猪 派生对话框自绘部分的显示 局域网内交流软件的语音聊天实现方法?基于API编程,不是MFC! 请问,怎样屏蔽控制台程序的关闭按钮? vc中的Dialog,怎么在编辑的时候,设置初始位置?? 请教高手:如何以HBITMAP判断位图是否为黑色。在线等待,谢谢! 急~~~~~~~~~~~~~~~~~请教简单问题,进者给分~~~~~~~~~ ◆◆◆◆请数学和英语好的大侠进来帮帮忙◆◆◆◆ 鼠标钩子过程拦截鼠标弹起消息时会进入两次 千兆局域网中,单个千兆网卡主机的最大发包率? 怎么样才能显示空心任何颜色的圆
函数recvfrom会立即返回.
{
int error = 0;
int i_val = 0; // 设置多播和广播
if ( IN_MULTICAST(ntohl(inet_addr(textIP))) )
{
i_val = 1;
error = setsockopt(m_Socket, IPPROTO_IP, IP_MULTICAST_LOOP, (char*)&i_val, sizeof(i_val) );
if (error == SOCKET_ERROR)
{
ReportError();
return FALSE;
}
ip_mreq multicastAddr;
multicastAddr.imr_multiaddr.s_addr = inet_addr(textIP);
multicastAddr.imr_interface.s_addr = htonl(INADDR_ANY);
error = setsockopt(m_Socket, IPPROTO_IP, IP_ADD_MEMBERSHIP, (char*)&multicastAddr, sizeof(multicastAddr));
if (error == SOCKET_ERROR)
{
ReportError();
return FALSE;
}
}
//设置广播
if ( inet_addr(textIP) == INADDR_BROADCAST )
{
i_val = 1;
error = setsockopt( m_Socket, SOL_SOCKET, SO_BROADCAST, (char*)&i_val, sizeof(i_val) );
if (error == SOCKET_ERROR)
{
ReportError();
return FALSE;
}
}
return TRUE;
}