SOCKET s,
const struct sockaddr FAR *name,
int namelen,
LPWSABUF lpCallerData,
LPWSABUF lpCalleeData,
LPQOS lpSQOS,
LPQOS lpGQOS,
DWORD dwFlags
);
1.这个函数中的lpCallerData和lpCalleeData这两个参数在当前的windows平台上并未真正实现,应均设为NULL(《windows网络编程技术》中 的原话)是不是这样?如果是,也就是说,这两个参数是不能用的。
2.在异步I/O模型中,是不是WSAJoinLeaf()如果成功返回,也就是加入组播成功,会发出FD_CONNECT消息?如果,发出了这个消息,谁会收到 这个消息,是组播中的所有成员,还是只是本机收到?
3.“在一个无根控制层面内,我们可强行实施自己的成员资格方案,这是通过实施自己组成员资格协议来实现的。”这是《windows网络编程技术》中的一段话,这段话是不是也就说,ip多播中我可以控制多播组的成员,而不是谁想加入多播组都可以?如果是这样,我将怎样来实现?
4.我如何得到多播组的成员的信息,如:ip地址,主机名等?
11 个解决方案
#1
没有人回答,也帮忙up一下!!!
#2
给我你的email,我发给你.
#3
把email贴出来,我给你发个例子
#4
只有在有根控制方案中,才会生成FD_CONNECT通知
再无根方案中,不能控制多播成员。
再无根方案中,不能控制多播成员。
#5
谢了,HeavenS,我收到后,就给分
popnetin@etang.com
popnetin@etang.com
#6
推荐《visual c++ 网络协议分析及应用》
#7
只是本机收到
#8
这本书什么地方有啊?是不是很有用啊
#9
谢谢HeavenS,我已经收到,但是运行是有错误,是加入多播组失败。而且这个程序是最基本的用法,并且对上面的问题进行解答。不过我仍然谢谢你,结帖我时候我再给你分,谢谢!!
#10
关注
学习中
学习中
#11
我也有问题:
WSABUF wsaCalleeData;
m_hGroupSocket=WSAJoinLeaf(m_hSocket,(PSOCKADDR)&addr,sizeof(addr),NULL,&wsaCalleeData,NULL,NULL,JL_BOTH);
if(m_hGroupSocket==INVALID_SOCKET)
{
TRACE("WSAJoinLeaf:%d",WSAGetLastError());
... ...
用F10执行到此处时,
m_hSocket=116
&addr=0x004178a4,且经过查看,其中包含有本机的ip
但还总是执行if语句内部,WSAEGetLastError()=10022,表明是传递的参数无效,为什么?
我把第五个参数改成NULL也一样错误
谁能帮我看一看
WSABUF wsaCalleeData;
m_hGroupSocket=WSAJoinLeaf(m_hSocket,(PSOCKADDR)&addr,sizeof(addr),NULL,&wsaCalleeData,NULL,NULL,JL_BOTH);
if(m_hGroupSocket==INVALID_SOCKET)
{
TRACE("WSAJoinLeaf:%d",WSAGetLastError());
... ...
用F10执行到此处时,
m_hSocket=116
&addr=0x004178a4,且经过查看,其中包含有本机的ip
但还总是执行if语句内部,WSAEGetLastError()=10022,表明是传递的参数无效,为什么?
我把第五个参数改成NULL也一样错误
谁能帮我看一看
#1
没有人回答,也帮忙up一下!!!
#2
给我你的email,我发给你.
#3
把email贴出来,我给你发个例子
#4
只有在有根控制方案中,才会生成FD_CONNECT通知
再无根方案中,不能控制多播成员。
再无根方案中,不能控制多播成员。
#5
谢了,HeavenS,我收到后,就给分
popnetin@etang.com
popnetin@etang.com
#6
推荐《visual c++ 网络协议分析及应用》
#7
只是本机收到
#8
这本书什么地方有啊?是不是很有用啊
#9
谢谢HeavenS,我已经收到,但是运行是有错误,是加入多播组失败。而且这个程序是最基本的用法,并且对上面的问题进行解答。不过我仍然谢谢你,结帖我时候我再给你分,谢谢!!
#10
关注
学习中
学习中
#11
我也有问题:
WSABUF wsaCalleeData;
m_hGroupSocket=WSAJoinLeaf(m_hSocket,(PSOCKADDR)&addr,sizeof(addr),NULL,&wsaCalleeData,NULL,NULL,JL_BOTH);
if(m_hGroupSocket==INVALID_SOCKET)
{
TRACE("WSAJoinLeaf:%d",WSAGetLastError());
... ...
用F10执行到此处时,
m_hSocket=116
&addr=0x004178a4,且经过查看,其中包含有本机的ip
但还总是执行if语句内部,WSAEGetLastError()=10022,表明是传递的参数无效,为什么?
我把第五个参数改成NULL也一样错误
谁能帮我看一看
WSABUF wsaCalleeData;
m_hGroupSocket=WSAJoinLeaf(m_hSocket,(PSOCKADDR)&addr,sizeof(addr),NULL,&wsaCalleeData,NULL,NULL,JL_BOTH);
if(m_hGroupSocket==INVALID_SOCKET)
{
TRACE("WSAJoinLeaf:%d",WSAGetLastError());
... ...
用F10执行到此处时,
m_hSocket=116
&addr=0x004178a4,且经过查看,其中包含有本机的ip
但还总是执行if语句内部,WSAEGetLastError()=10022,表明是传递的参数无效,为什么?
我把第五个参数改成NULL也一样错误
谁能帮我看一看