void CTCP_ClientDlg::OnBtnConnect() 
{
// TODO: Add your control notification handler code here;
CString str,str1;
int port;
GetDlgItem(IDC_ADDR)->GetWindowText(str);
GetDlgItem(IDC_PORT)->GetWindowText(str1);
if (str=="" || str1=="")
{
AfxMessageBox("服务器或端口不能为空! ! !");
}
else
{
port=atoi(str1.GetBuffer(1));
sockaddr.sin_family=AF_INET;
sockaddr.sin_port=htons(port);
sockaddr.sin_addr.S_un.S_addr=inet_addr(str.GetBuffer(1)); GetDlgItem(IDC_TEXT)->SetWindowText("正在连接服务器.......\r\n");
int bu;
bu=connect(sock,(SOCKADDR*)&sockaddr,sizeof(sockaddr));
if (bu!=SOCKET_ERROR)
{
GetDlgItem(IDC_TEXT)->GetWindowText(str);
str+="连接服务器成功!\r\n";
GetDlgItem(IDC_TEXT)->SetWindowText(str);
GetDlgItem(IDC_SENDTEXT)->EnableWindow(TRUE);
GetDlgItem(IDC_BTN_SEND)->EnableWindow(TRUE);
GetDlgItem(IDC_ADDR)->EnableWindow(FALSE);
GetDlgItem(IDC_PORT)->EnableWindow(FALSE);

else
{
GetDlgItem(IDC_TEXT)->GetWindowText(str);
str+="连接服务器失败!\r\n";
GetDlgItem(IDC_TEXT)->SetWindowText(str);
}
}
}我自己做了一个简单的服务器,上面的代码是做客户端的,明明IP和端口号是对的,而且对话框已经显示出服务器那边的其实了,但是判断的说连接失败,郁闷