联系方式    |    在线留言 pg模拟器(试玩游戏)官方网站·模拟器/试玩平台
pg模拟器(试玩游戏)官方网站·模拟器/试玩平台
客服热线089-235279723
荣誉资质

WINCE上实现UDP通信(100%可行!)【pg电子赏金试玩app】

作者:免费pg电子游戏麻将    发布时间:2025-01-31 18:58:01    浏览量:
本文摘要:首先讲解一下,研发平台:WINCE4.2(WINCE5.0也限于,因为用于了静态编译器MFC动态链接库);开发工具:VS2005。

首先讲解一下,研发平台:WINCE4.2(WINCE5.0也限于,因为用于了静态编译器MFC动态链接库);开发工具:VS2005。  接下来开始改动代码:  viewplaincopytoclipboardprint?  1.改动UDP_CE.CPP的SendData函数为:  boolCUDP_CE::SendData(constchar*buf,intlen)  {  intnBytes=0;  intnErrorCode;  nBytes=sendto(m_UDPSocket,buf,len,0,(sockaddr*)m_RemoteAddr,sizeof(m_RemoteAddr));  if(nBytes==SOCKET_ERROR)  {  nErrorCode=WSAGetLastError();  m_OnUdpError(m_pOwnerWnd,nErrorCode);  returnfalse;  }  returntrue;  }  当然,不要记得改动UDP_CE.h的SendData函数声明为:boolSendData(constchar*buf,intlen);  2.改动UDP_CE.CPP的RecvThread函数为:  。..。

..。..。

..。..  if(ret》0)  {  if(FD_ISSET(pSocket-》m_UDPSocket,fdRead))  {  tmpAddr.sin_family=AF_INET;  tmpAddr.sin_port=htons(pSocket-》m_RemoteAddr.sin_port);  tmpAddr.sin_addr.s_addr=INADDR_ANY;  tmpRecvLen=sizeof(tmpAddr);  recvBuf=newchar[1024];  recvedBuf=newchar[1024];  ZeroMemory(recvBuf,1024);  ZeroMemory(recvedBuf,1024);  recvLen=recvfrom(pSocket-》m_UDPSocket,recvBuf,1024,0,(SOCKADDR*)tmpAddr,tmpRecvLen);  if(recvLen==SOCKET_ERROR)  {  iErrorCode=WSAGetLastError();  pSocket-》m_OnUdpError(pSocket-》m_pOwnerWnd,iErrorCode);  break;  }  elseif(recvLen==0)  {  iErrorCode=WSAGetLastError();  pSocket-》m_OnUdpError(pSocket-》m_pOwnerWnd,iErrorCode);  break;  }  else  {  //此处加到解析程序,将接管到的数据解析后,  pSocket-》m_OnUdpRecv(pSocket-》m_pOwnerWnd,recvBuf,recvedBufLen,(SOCKADDR*)tmpAddr);  delete[]recvBuf;  recvBuf=NULL;  delete[]recvedBuf;  recvedBuf=NULL;  }  }  3.改动UDPDlg.cpp.CPP的OnUdpCERecv函数为:  CUDPDlg*pDlg;  pDlg=(CUDPDlg*)pWnd;  CEdit*pRecvStrEdit=(CEdit*)pDlg-》GetDlgItem(IDC_EDIT_RECVSTR);  ASSERT(pRecvStrEdit!=NULL);  CStringstrRecv(buf);  pRecvStrEdit-》SetWindowText(strRecv);  4.移除UDP_CE.H,不是必需,但可以节省多余的代码  typedefstructCUDPData  {  charFrameHead[4];//帧头  DWORDDataPackageLen;//帧长度  char*Buf;//缓冲区数据  charFrameTail[4];//帧尾  }UDPData;  1.改动UDP_CE.CPP的SendData函数为:  boolCUDP_CE::SendData(constchar*buf,intlen)  {  intnBytes=0;  intnErrorCode;  nBytes=sendto(m_UDPSocket,buf,len,0,(sockaddr*)m_RemoteAddr,sizeof(m_RemoteAddr));  if(nBytes==SOCKET_ERROR)  {  nErrorCode=WSAGetLastError();  m_OnUdpError(m_pOwnerWnd,nErrorCode);  returnfalse;  }  returntrue;  }  当然,不要记得改动UDP_CE.h的SendData函数声明为:boolSendData(constchar*buf,intlen);  2.改动UDP_CE.CPP的RecvThread函数为:  。

..。..。

..。..。..  if(ret》0)  {  if(FD_ISSET(pSocket-》m_UDPSocket,fdRead))  {  tmpAddr.sin_family=AF_INET;  tmpAddr.sin_port=htons(pSocket-》m_RemoteAddr.sin_port);  tmpAddr.sin_addr.s_addr=INADDR_ANY;  tmpRecvLen=sizeof(tmpAddr);  recvBuf=newchar[1024];  recvedBuf=newchar[1024];  ZeroMemory(recvBuf,1024);  ZeroMemory(recvedBuf,1024);  recvLen=recvfrom(pSocket-》m_UDPSocket,recvBuf,1024,0,(SOCKADDR*)tmpAddr,tmpRecvLen);  if(recvLen==SOCKET_ERROR)  {  iErrorCode=WSAGetLastError();  pSocket-》m_OnUdpError(pSocket-》m_pOwnerWnd,iErrorCode);  break;  }  elseif(recvLen==0)  {  iErrorCode=WSAGetLastError();  pSocket-》m_OnUdpError(pSocket-》m_pOwnerWnd,iErrorCode);  break;  }  else  {  //此处加到解析程序,将接管到的数据解析后,  pSocket-》m_OnUdpRecv(pSocket-》m_pOwnerWnd,recvBuf,recvedBufLen,(SOCKADDR*)tmpAddr);  delete[]recvBuf;  recvBuf=NULL;  delete[]recvedBuf;  recvedBuf=NULL;  }  }  3.改动UDPDlg.cpp.CPP的OnUdpCERecv函数为:  CUDPDlg*pDlg;  pDlg=(CUDPDlg*)pWnd;  CEdit*pRecvStrEdit=(CEdit*)pDlg-》GetDlgItem(IDC_EDIT_RECVSTR);  ASSERT(pRecvStrEdit!=NULL);  CStringstrRecv(buf);  pRecvStrEdit-》SetWindowText(strRecv);  4.移除UDP_CE.H,不是必需,但可以节省多余的代码  typedefstructCUDPData  {  charFrameHead[4];//帧头  DWORDDataPackageLen;//帧长度  char*Buf;//缓冲区数据  charFrameTail[4];//帧尾  }UDPData;还可以移除窗体上发送到、接管数字的编辑框等,因为实际应用于中用不上。

  本文来自CSDN博客,刊登请求标明原文:http://blog.csdn.net/hellogv/archive/2007/11/10/1878355.。


本文关键词:免费pg电子游戏麻将,pg模拟器试玩入口免费,pg试玩版网站,pg电子赏金试玩app

本文来源:免费pg电子游戏麻将-www.hxsound.com

新闻推荐

友情链接: yodo官方下载 天博tb·综合体育 博鱼(boyu·中国)官方网站 best365官网下载最新版本免费版 亚傅体育app官网登录入口

在线客服 : 服务热线:089-235279723 电子邮箱: admin@youweb.com

公司地址:广东省广州市天河区某某工业园88号

免费pg电子游戏麻将,拥有占地面积57000平方米,建筑面积100000平方米的净水生产基地,是目前国内同行业中集产销研,服务一体的高新技术生产企业。...

Copyright © 2007-2024 www.hxsound.com. 免费pg电子游戏麻将科技 版权所有