Сокеты. Отправка сообщения.
Добавлено: 27 апр 2014, 15:16
Доброго времени суток, господа и дамы.
Столкнулся с такой проблемой.
При нажатии на кнопку "Send" из CEdit'a должно браться сообщение и отправляться на "другую сторону". Проблема в том, что отправляется только первый введенный символ, вся остальная часть сообщения обрезается. Если же вот здесь заменить m_strMessage на любую, например "jdsfndsifnsdogfn" строку, то эта строка отправляется и получается абсолютно нормально.
Помогите разобраться, пожалуйста!
P.s. компилятор Visual Studio 2010 SP1
P.p.s. когда-то писал это на Visual Studio 6 и там все отлично работало.
Столкнулся с такой проблемой.
Код: Выделить всё
void CChatDlg::OnBnClickedButton3()
{
int iLen;
int iSent;
UpdateData(TRUE);
if (m_strMessage != "")
{
iLen = m_strMessage.GetLength();
iSent = m_sConnectSocket.Send(m_strMessage,iLen); //?!!!!
if(iSent == SOCKET_ERROR)
{
}
else
{
m_ctlSent.AddString(m_strMessage);
UpdateData(FALSE);
}
}
}
void CChatDlg::OnReceive()
{
char *pBuf = new char[1025];
int iBufSize = 1024;
int iRcvd;
CString strRecvd;
iRcvd = m_sConnectSocket.Receive(pBuf, iBufSize);
if(iRcvd == SOCKET_ERROR)
{
}
else
{
pBuf[iRcvd]=NULL;
strRecvd = pBuf;
m_ctlRecvd.AddString(strRecvd);
UpdateData(FALSE);
}
}
Код: Выделить всё
m_sConnectSocket.Send(m_strMessage,iLen)
Помогите разобраться, пожалуйста!
P.s. компилятор Visual Studio 2010 SP1
P.p.s. когда-то писал это на Visual Studio 6 и там все отлично работало.