全文预览

局域网聊天程序MFC 课程设计

上传者:梦&殇 |  格式:doc  |  页数:14 |  大小:197KB

文档介绍
f(SOCKADDR));Р套接字总是提示“绑定失败!”Р发现代码无误,在宿舍自己电脑上绑定成功,而在机房电脑上某个主机可以成功,某些失败,经分析可能是bind的绑定IP/端口问题,通过更改端口号6000(开始设置的端口号)->6020(更改后的端口号),在经过测试,程序无误。Р DWORD WINAPI RecvProc(LPVOID lpParameter);Р 当我们创建一个线程的时候系统会调用一个线程函数从而启用这个线程,hatDlg的成员函数,hatDlg对象再调用函数,线程函数调用是不需要对象的,所以产生了错误Р 我们可以通过创建一个静态的函数,那么它不属于哪个对象,它属于这个类,当我们在创建线程后就可以直接调用这个函数。Р主机字节序向网络字节序的转化问题Р当我们按下发送键时根据IP地址发送数据,那么我们首先要得到一个IP地址就要用到CIPAddressCtrl类,其中有一个函数GetAddress用来获取主机IP:((CIPAddressCtrl*)GetDlgItem(IDC_IPADDRESS1))->GetAddress(dwIP);//主机IP字节序Р就这里我们该如何利用这个IP地址来收发数据:Р要定义一个地址结构体的变量SOCKADDR_IN addrTo;问题在于下面:如何在局域网内实现,就要转化成网络的IP字节序:РaddrTo.sin_addr.S_un.S_addr=htonl(dwIP);//转化成网络的字节序РIP地址转化(点分十进制)Р_ntoa(addrFrom.sin_addr)Р接收数据窗口Р实现数据传递::PostMessage();BOOL PostMessage(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam ); Р 程序中可以改进的地方说明。Р接收窗口数据要包括原有数据

收藏

分享

举报
下载此文档