为什么...?? 为什么..???
为什么总是显示: 创建Socket失败??!!代码://全局定义开始;CWinThread* ServerThread;
CWinThread* ClientThread;
CSocket socksrv;
CSocket sockclt;UINT ThreadSrv(LPVOID pParam);
UINT ThreadClt(LPVOID pParam);//全局定义结束;//对话框区void CMuChatDlg::OnBtnServer()
{
ServerThread = AfxBeginThread(ThreadSrv,this);
}void CMuChatDlg::OnBtnClient()
{
ClientThread = AfxBeginThread(ThreadClt,this);
}//对话框区结束//线程区UINT ThreadSrv(LPVOID pParam)
{
CMuChatDlg* pDlg = (CMuChatDlg*)pParam;
if(!socksrv.Create(6000))
{
AfxMessageBox("创建Socket出错..!");
return 0;
}
if(!socksrv.Listen())
{
AfxMessageBox("监听出错..!");
socksrv.Close();
return 0;
}
CSocket sockact;
SOCKADDR_IN sockadr;
int Len = sizeof(SOCKADDR);
if(!socksrv.Accept(sockact,(SOCKADDR*)&sockadr,&Len))
{
AfxMessageBox("Accept错误!");
socksrv.Close();
return 0;
}
socksrv.Send(pDlg->m_MsgOne,pDlg->m_MsgOne.GetLength()+1);
socksrv.Close();
sockact.Close();
return 1;
}UINT ThreadClt(LPVOID pParam)
{
CMuChatDlg* pDlg = (CMuChatDlg*)pParam;
sockclt.Create();
if(!sockclt.Connect("127.0.0.1",6000))
{
AfxMessageBox("连接错误!!");
sockclt.Close();
return 0;
}
sockclt.Receive(&pDlg->m_MsgOne,pDlg->m_MsgOne.GetLength()+1);
sockclt.Close();
return 1;
}//线程区结束;
为什么总是显示: 创建Socket失败??!!代码://全局定义开始;CWinThread* ServerThread;
CWinThread* ClientThread;
CSocket socksrv;
CSocket sockclt;UINT ThreadSrv(LPVOID pParam);
UINT ThreadClt(LPVOID pParam);//全局定义结束;//对话框区void CMuChatDlg::OnBtnServer()
{
ServerThread = AfxBeginThread(ThreadSrv,this);
}void CMuChatDlg::OnBtnClient()
{
ClientThread = AfxBeginThread(ThreadClt,this);
}//对话框区结束//线程区UINT ThreadSrv(LPVOID pParam)
{
CMuChatDlg* pDlg = (CMuChatDlg*)pParam;
if(!socksrv.Create(6000))
{
AfxMessageBox("创建Socket出错..!");
return 0;
}
if(!socksrv.Listen())
{
AfxMessageBox("监听出错..!");
socksrv.Close();
return 0;
}
CSocket sockact;
SOCKADDR_IN sockadr;
int Len = sizeof(SOCKADDR);
if(!socksrv.Accept(sockact,(SOCKADDR*)&sockadr,&Len))
{
AfxMessageBox("Accept错误!");
socksrv.Close();
return 0;
}
socksrv.Send(pDlg->m_MsgOne,pDlg->m_MsgOne.GetLength()+1);
socksrv.Close();
sockact.Close();
return 1;
}UINT ThreadClt(LPVOID pParam)
{
CMuChatDlg* pDlg = (CMuChatDlg*)pParam;
sockclt.Create();
if(!sockclt.Connect("127.0.0.1",6000))
{
AfxMessageBox("连接错误!!");
sockclt.Close();
return 0;
}
sockclt.Receive(&pDlg->m_MsgOne,pDlg->m_MsgOne.GetLength()+1);
sockclt.Close();
return 1;
}//线程区结束;
解决方案 »
- MFC中CDataGrid的一列变成COMBOBOX或CHECKBOX
- 关于完全端口中的缓冲池
- 高分求驱动编译方法
- 以前在resources里面一点对话框或里面的控件,就有相关的函数显示在右边的工作区,现在总是弹出MFC CLASS WIZARD!!!
- 求教控件依赖性的解决方案
- 小菜鸟一只,毕设是SPI防火墙,纯应用层的,端口拦截方面有很大的bug,求好心人帮我看看代码……
- 为什么我的msdn开始的时候会跳出一个对话框
- 关于用运算符重载来实现可利用空间表的问题
- ShellExecute在exe间传数据怎么接收?
- sdk 创建一个edit,带有滚动条的,为什么滚动条是灰色的,没有激活的,我怎么能创建一个上来就激活滚动条的edit?
- 参数register unsigned long *from 是什么意思?
- 用installshield6.3如何做出Uninstall?
我有socket程序的Udp.TCP代码....
里面都是这样写的..
犯了低级错误..!!
我把AfxSocketInit注释掉了..
忘记了..
我爱你..!