收录日期:2019/02/20 03:29:35 时间:2016/05/22 09:12:28 标签:网络编程
本人一程序是关于点到点UDP语音传输的,在单机上测试,如果计算机和网络相连,就会有错误报告,如果与外部网络断开连接,运行我的程序,就没问题,不知错误到底在哪,请各位指教.
大概实现如下,在初始化窗体的OnInitDialog函数中有:
         m_sRecv=socket(AF_INET,SOCK_DGRAM,0);
addrRecv.sin_family=AF_INET;
addrRecv.sin_addr.S_un.S_addr=INADDR_ANY;
addrRecv.sin_port=htons(RECEIVEPORT);
if(bind(m_sRecv,(LPSOCKADDR)&addrRecv,sizeof(addrRecv))==SOCKET_ERROR)
{
MessageBox("bind fail.");
}   
         
    int iError=WSAAsyncSelect(m_sRecv,m_hWnd,WM_READREADY,FD_READ|FD_CLOSE);
if(iError==SOCKET_ERROR)
{
   ......
}
在请求连接按扭事件中有:
         m_RemoteIP=inet_addr(dlg.ip);/*此处是从窗体获取对端IP,本机测试用了127.0.0.1*/
         to.sin_family=AF_INET;
to.sin_port=htons(RECEIVEPORTIP);
to.sin_addr.S_un.S_addr=m_RemoteIP; /*单步跟踪到此会报错*/

int iError=sendto(m_IPSend,chQuery,sizeof(chQuery),0,(LPSOCKADDR)&to,sizeof(to));

望各位指教,不胜感激,急急急!!!



是在这一句
to.sin_addr.S_un.S_addr=m_RemoteIP; /*单步跟踪到此会报错*/

出现debug错误吗?
是不是内存错误??
描述的再详细一些!!
为什么要用S_un呢?
to.sin_addr.s_addr = inet_addr(m_RemoteIP);看看
同意楼上的
struct sockaddr_in{
 short sin_family;
 unsigned short sin_port;
 IN_ADDR sin_addr;
 char sin_zero[8];};

typedef struct in_addr {
 union {
 struct{
 unsigned char s_b1,
 s_b2,
 s_b3,
 s_b4;
 } S_un_b;
 struct {
 unsigned short s_w1,
 s_w2;
 } S_un_w;
 unsigned long S_addr;
 } S_un;
} IN_ADDR;

这就是我用S_un的原因,忘了说,如果我把断点设在OnInitDialog里,执行到最后}也会报错
t0mychen(TomyChen) :

在他的程序中已经
m_RemoteIP=inet_addr(dlg.ip);

错误描述贴上来啦
to.sin_addr.S_un.S_addr=m_RemoteIP; /*单步跟踪到此会报错*/
错误描述如下
“0x00408f7e”指令引用的“0x45504149”内存。该内存不能为“read”。要终止该程序,请按“确定”。 
请大家帮帮忙了!!!

我在oracle服务器上的sqlplus上的登陆界面上输入system/manager,报告ora-12560错误,说TNS:协议是配器错误,该怎么处理,要重装吗? 有做过激光近视手术的IT同道吗? 4级关联动态下列查询问题!!! 放分、发书了!高质量C++/C编程指南(林锐) ,祝大家暑假愉快! 大虾救我~~ bea weblogic7.0 请问Exchange active directory connecter 是什么东西? 如何知道小数点后又几位? 求救vfp问题。 谁有消暑的良方????????我要热死了!!!! 问一个关于resin的配置和servlet的问题 那里有linux的指令介绍阿 急!在线等,如何在客户端通过Http访问SQL数据库的问题? pcmcia? cf? 关于add和daa 使用 很奇怪的数据库问题!!!! 在线等待:我的数据库只有data文件,没有log文件,怎么恢复?附加不行。 SOS!!! 在线等待!!! HELP ME!!! 100分解决iframe问题!! 定时器为何删不掉?难道不能用两个吗? 在sqlplus中的字符串位操作问题 SOS!!! 在线等待!!! HELP ME!!! 各位前辈,谁有libjcc.dll(pb7.0)请发我一分,急用。谢谢!E-MAIL:yangtao76@eyou.com 关于cwd 怎样能让鼠标右键点击dialog上的任何地方(包括控件上面,和一般客户区)都能弹出同样的菜单?? 我的apache+resin有错,请教 怎么实现月份的报表查询? 谁知道IIS中SSL证书的私钥保存在哪里。 有做过激光近视手术的IT同道吗?