WinCE5.0下的UDP客户端通讯问题

gengzhen_2005 2009-11-05 10:00:40
各位专家:
看看我的Wince5.0下的UDP客户端程序,哪里有问题,调试显示数据已经发送出去了,但是服务器没有收到数据,代码如下:
SOCKADDR_IN m_sinServer;
int ret=0;
WSADATA wsd;
ret=WSAStartup(MAKEWORD(1,1),&wsd);

int m_socket;
m_socket = socket(AF_INET,SOCK_DGRAM,IPPROTO_UDP);
if (m_socket == INVALID_SOCKET)
{
int iSocketError = WSAGetLastError();
return FALSE;
}

memset(&m_sinServer, 0, sizeof(SOCKADDR_IN));

m_sinServer.sin_family = AF_INET;
m_sinServer.sin_port = htons(9991);
CString m_remoteHost=TEXT("10.21.1.114");
//此处要将双字节转换成单字节
char ansiRemoteHost[255];
ZeroMemory(ansiRemoteHost,255);
WideCharToMultiByte(CP_ACP,WC_COMPOSITECHECK,m_remoteHost,wcslen(m_remoteHost)
,ansiRemoteHost,wcslen(m_remoteHost),NULL,NULL);
m_sinServer.sin_addr.s_addr=inet_addr(ansiRemoteHost);
int nBytes = 0;
int nSendBytes=0;
char test[20]="this is test";
int len=20;
while (nSendBytes < len)
{
nBytes = sendto(m_socket,test+nSendBytes,len-nSendBytes,0,
(SOCKADDR *) &m_sinServer,sizeof(SOCKADDR_IN));
if (nBytes==SOCKET_ERROR )
{
int iErrorCode = WSAGetLastError();

//关闭socket
closesocket(m_socket);
return FALSE;
}

nSendBytes = nSendBytes + nBytes;

if (nSendBytes < len)
{
Sleep(1000);
}
}
closesocket(m_socket);

WSACleanup( );
...全文
107 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
gengzhen_2005 2009-11-13
  • 打赏
  • 举报
回复
谢谢91program(走自己的路,让别人去说吧)的回复。
通过USB线将终端连接到电脑,想通过电脑联网来进行UDP通信是不行的,因为aciveSync不支持UDP通信,所以只能用GPRS了,如果是TCP还可以的。但是现在我还没通过gprs通信成功。
91program 2009-11-13
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 gengzhen_2005 的回复:]
自己顶一下,问题真的很难啊!!发现数据包已经发出了,但是肯定有其他问题的!!
[/Quote]

发出去?
调用API成功,只能说是发送本机(本设备)的网络层,并不是传输出去。

LZ你最好还是先验证网络是否通了?UDP发送程序很简单的,单步调试到发送的语句,如果所以参数都是正确的,且函数的返回值正确,接收端仍然接收不到东东,应该就是通讯链路的问题。
gengzhen_2005 2009-11-12
  • 打赏
  • 举报
回复
自己顶一下,问题真的很难啊!!发现数据包已经发出了,但是肯定有其他问题的!!
91program 2009-11-05
  • 打赏
  • 举报
回复
不一定是代码问题,可能是数据链路没有通
ruritanian 2009-11-05
  • 打赏
  • 举报
回复
pimg
抓netlog
gengzhen_2005 2009-11-05
  • 打赏
  • 举报
回复
请问1楼,怎么判断数据链路是否通了?如何查找啊。

19,524

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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