双11狂欢大促

盲盒赢 定制羽绒服

开启惊喜盲盒,抽取你的专属好礼

— 惊喜奖品抢先看 —

使用udp发送广播数据,发送出错,请前辈帮忙!

Fangyuanshan Fangyuanshan 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
各位前辈,小弟近日在编写一个使用udp进行广播的动态库程序,广播地址为255.255.255.255。在win2000下开发,在本机上测试没有发现问题,可以正常使用。交给客户使用,客户反映无法使用。经过测试,在比较干净的电脑上确实无法使用,函数出错返回。程序如下;


class UDPSocket : public CAsyncSocket
{
......
}

UDPSocket *g_pUDPSocket;//此为全局指针

extern "C" int __stdcall udp_broadcast(SEARCHECHO Proc)
{
int sendlen;
BOOL bBroadcast = true;

g_pUDPSocket->NewDeviceProc = Proc;
g_pUDPSocket->SetSockOpt(SO_BROADCAST, (BOOL*)&bBroadcast, sizeof(BOOL));
sendlen = g_pUDPSocket->SendTo("X", 1, 65535, "255.255.255.255");

if (sendlen == SOCKET_ERROR)
{
return (g_pUDPSocket->GetLastError());
}
else
return(1);
}

函数返回10022,表示SendTo使用了一个无效的参数。百思不得其解,不知哪位前辈可以告知?

...全文
评论 6
收藏 已收藏
分享
返回顶部
Fangyuanshan
网络编程 18,356 成员 64,161 内容