自己写的一个小验证  客户端输入名字密码  点击登录   服务器端收到之后验证   并返回正确与否
但是服务器这边的表里总有一项不能正确判断   代码如下   不知道为什么
服务器:
         m_cSock = new CMySock;
m_cSock->GetDlg(this);
m_mSock->Accept(*m_cSock);
char bufName[100] = {0};
m_cSock->Receive(bufName,sizeof(bufName)-1,0);
char bufKey[100] = {0};
m_cSock->Receive(bufKey,sizeof(bufKey)-1,0);
CString strName = bufName;
CString strKey = bufKey;
if(m_pSet.IsOpen())
m_pSet.Close();
m_pSet.Open();
m_pSet.MoveNext();
while(!m_pSet.IsEOF())
{
if(strcmp(strName,m_pSet.m_name) == 0 && strcmp(strKey,m_pSet.m_key) == 0)
{
send(*m_cSock,"right",strlen("right"),0);
break;
}
else
m_pSet.MoveNext();
}
if(m_pSet.IsEOF())
{
if(strcmp(strName,m_pSet.m_name) == 0 && strcmp(strKey,m_pSet.m_key) == 0)
send(*m_cSock,"wrong",strlen("right"),0);
else
send(*m_cSock,"wrong",strlen("wrong"),0);
}
客户端:
CString strName;
GetDlgItemText(IDC_EDIT_NAME,strName);
CString strKey;
GetDlgItemText(IDC_EDIT_KEY,strKey);
send(m_sSock,strName,strlen(strName),0);
Sleep(5);
send(m_sSock,strKey,strlen(strKey),0);
char recvBuf[100] = {0};
int nRecv = recv(m_sSock,recvBuf,sizeof(recvBuf)-1,0);
if(nRecv > 0 )
recvBuf[nRecv] = 0;
if(strcmp(recvBuf,"right") != 0)
MessageBox("密码账号不对!");