CAsyncSocket 中怎样设置端口,如果在本地机测试,c/s都是4000就能连接。如果不同就连接不上?为什么??
if (m_iType == 0)
{
m_sConnectSocket.Create(103,SOCK_STREAM,FD_CONNECT);
m_sConnectSocket.Connect(m_strName,104);
}
else
{
m_sListenSocket.Create(104);
m_sListenSocket.Listen();
}
}
对吗??
if (m_iType == 0)
{
m_sConnectSocket.Create(103,SOCK_STREAM,FD_CONNECT);
m_sConnectSocket.Connect(m_strName,104);
}
else
{
m_sListenSocket.Create(104);
m_sListenSocket.Listen();
}
}
对吗??
解决方案 »
- 求助select的问题
- 高分求一个可用的WH_CBT或WH_CALLWNDPROC全局钩子代码。
- 如何在BHO程序中获得IHTMLDocument2接口指针?
- 自定义一个作图类,请问该怎么调用画图函数
- 爱默生笔试题,大家有兴趣来交流交流哈
- 腾讯TT(浏览器)插件的问题
- 想用CAsyncSocket做个简单的客户端服务器聊天程序
- 请问在那里可以找到一些 免费得Icon图标资源?谢谢
- 我要免费让大家使用我的控件 HttpPost,请进!!(就是帮你提交网页,ATL开发)
- 在MFC中读入txt文件数据,并保存到指定类型的数组中
- 为什么删除无模式对话框中总是有这个警告?
- 怎样判断 Client 端接受到信息 ? Client 开始发送数据
Server端口如果和Server相同的话,它会自己连接自己.
所以端口号要不同呀! client 端口为 103 ,怎么写这个连接呢?客户端其实是有底层tcp/ip自动分配的,不需要用户去设置。。
对,这个msdn上是这样说的.Create()就可以了,我想制定client的端口为103怎么做呢??
m_listensocket.Create(14875);//m_listensocket的基类是CAsyncSocket,14875为准备与客户端连接的端口
if (m_listensocket.GetLastError())
{
AfxMessageBox("服务器已启动!");
m_listensocket.Close();
return 0;
}
判断一下是否成功创建。
如果没有,通过GetLastError获得错误代码看看是什么问题。
m_socketCom.Create(3000, FD_CLOSE|FD_READ);
m_socketCom.Connect(4000);
//send or receive
....
m_socketCom.Close();
//Server
CAsyncSocket m_socketCom;
m_socketListen.Create(4000, SOCK_STREAM, FD_CLOSE|FD_LISTEN)
m_socketListen.Listen();::OnAccept()
{
Accept(m_socketCom)
}一般情况下,listensocket专门负责listen,通讯socket专门负责通讯