打印

为什么总返回-1有源码?

[复制链接]
1087|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
huangfeng33|  楼主 | 2013-5-8 16:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
BOOL InitNet(CString m_strGXCJPath)
{

DWORD SocketMode = 0;
int nPort;
CString m_strCfgInspect;
char cIPAddr[20]="\0";
sockaddr_in addr;
int ret;

m_strCfgInspect= m_strGXCJPath + "\\DPSet.ini";
nPort = GetPrivateProfileInt("ItemDP","Port",-1,m_strCfgInspect);  //端口

GetPrivateProfileString("ItemDP","IPAddr",(LPCTSTR)"",cIPAddr,20,m_strCfgInspect); //IP 地址
WSADATA data; //定义WSADATA结构体对象
  WSAStartup(MAKEWORD(2,2),&data) ;

LocSocket=::socket(AF_INET,SOCK_STREAM,0);
:: WSAAsyncSelect(LocSocket,this->m_hWnd,WM_SOCK, FD_READ|FD_CONNECT);

addr.sin_family=AF_INET;
    addr.sin_addr.S_un.S_addr=inet_addr(cIPAddr);
    addr.sin_port=ntohs(nPort);
ret = connect(LocSocket,(sockaddr*)&addr,sizeof(addr));  
if(ret)  //为什么总返回-1 ???/
return TRUE;
return FALSE;
沙发
jxmzzr| | 2013-5-8 16:35 | 只看该作者
调用WSAGetLastError()看看返回值,再查msdn,就知道是啥问题了

使用特权

评论回复
板凳
hawksabre| | 2013-5-8 18:29 | 只看该作者
单步调试   看看   是哪个函数出错了   呵呵    错误还是很明显的  

使用特权

评论回复
地板
拿起书本| | 2013-5-9 15:34 | 只看该作者
SOCKET_ERROR

a specific error code can be retrieved by calling WSAGetLastError

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

506

主题

2446

帖子

8

粉丝