EVC udp?

liwei3290 2010-12-07 02:04:27
socket版本有1.1和2.0两种 EVC4.0这2个版本都支持吗
两外对于连个版本的UDP组播 是否都支持

函数recfrom(...)什么时候会不返回
...全文
60 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
liwei3290 2010-12-09
  • 打赏
  • 举报
回复
能给个联系方式吗 QQ329044941
周江涛 2010-12-09
  • 打赏
  • 举报
回复
http://topic.csdn.net/u/20101208/08/921658cf-f7f3-45d9-9478-726fe93cb15f.html

BOOL 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;
}
周江涛 2010-12-08
  • 打赏
  • 举报
回复
以前版本的EVC只支持 socket1.1,新版的没了解
函数recvfrom会立即返回.

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧