socket通信编程一个无法找到答案的有关问题,求大神帮忙

socket通信编程一个无法找到答案的问题,求大神帮忙!
我做的是一个客户端和服务端通信的程序,但是每次每次连接成功后,服务端发送的消息,客户端只能接收到一个字符,例如我发送asdf,服务端只能接收到a,这是什么原因啊,我参考了好多程序都没找到问题所在,求大神帮忙分析下,感激不尽,在线等。

客户端发送消息事件代码如下:

void CChatClientDlg::OnBnClickedBtnSend() //发送按钮事件
{
// TODO: Add your control notification handler code here
int iSent;
UpdateData();
CString msgWords;
msgWords=m_sWords;
iSent=msgWords.GetLength();
m_ClientSocket->Send(LPCTSTR(msgWords),iSent); //向服务器发送消息
m_ListWords.AddString(_T("发送:")+msgWords);
m_ListWords.SetTopIndex(m_ListWords.GetCount()-1);
UpdateData(FALSE);
}
客户端接收事件如下:
void CChatServerDlg::OnReceive()
{
//接收客户端发来的信息
char *szTemp=new char[1025];
int sizeTemp=1024;
int n = m_ServerSocket->Receive(szTemp,sizeTemp); //接收信息
szTemp[n] = NULL;
CString sTemp;
//sTemp.Format(_T("收到:%s"),szTemp);
sTemp = szTemp;
m_ListWords.AddString(sTemp); //显示信息
m_ListWords.SetTopIndex(m_ListWords.GetCount() - 1);
UpdateData(FALSE);
}
socket 编程 服务器 消息发送错误

------解决方案--------------------
1、要判断返回值
2、看看传输的编码格式
------解决方案--------------------
你判断以下Send的返回值,看send了多少字节。还找不到问题,参考这里,很多socket例子:
http://download.****.net/detail/geoff08zhang/4571358
------解决方案--------------------
你是unicode版本的程序,服务端是mbcs版本的程序。
99%的可能性。

都改为mbcs版本的试试(就光说网络编程这一块,mbcs版本更适合一点,unicode版本下有个长度乘以2的问题)