0
안녕하십니까, loaclHost에서이 프로그램은 완벽하게 작동하지만, localHost를 내 IP로 변경하면 클라이언트는 더 이상 모든 데이터를받지 못하기 때문에 더 이상 데이터를 다시 작성하지 않습니다. 암호. 디버그 정보QTcpSocket가 모든 데이터를 수신하지 못했습니다.
void fenPrincipal::test()
{
qDebug()<<tailleContenu<<"taille Contenu 1";
QDataStream in(actualSocket);
if (tailleContenu == 0)
{
if (actualSocket->bytesAvailable() < (int)sizeof(quint64))
return;
in >> tailleContenu;
qDebug()<<tailleContenu<<"taille Contenu";
}
a = actualSocket->bytesAvailable();
qDebug()<<actualSocket->bytesAvailable()<<"byte available";
if (a < tailleContenu)
{
return;
}
else if (a>tailleContenu){
QString messageRecue;
in >> messageRecue;
qDebug()<<messageRecue<<"message";
tailleContenu=0;
}
}
하고 여기에 있습니다 : : 여기 내 새로운 코드의 일부이다 파악하는 데 도움이 될 수 있습니다
1448 byte available
"Dragon Age: Inquisition -Du gameplay, des images et des détails" titre <- it's the second information send by the server
0 taille Contenu 1
2812 taille Contenu
1310 byte available
2812 taille Contenu 1
1460 byte available
2812 taille Contenu 1
2920 byte available
"" message
0 taille Contenu 1
30962754250670195 taille Contenu
1452 byte available
30962754250670195 taille Contenu 1
2912 byte available
30962754250670195 taille Contenu 1
4372 byte available
30962754250670195 taille Contenu 1
5832 byte available
30962754250670195 taille Contenu 1
6806 byte available
누군가 내이 일을 does'nt 어떻게 내 클라이언트 작업을 할 이유는 무엇입니까?
나는 여러분의 IP 주소가 유효하지 않다고 생각합니다. ipconfig를 확인하고 확인하십시오. 올바르지 않으면 localhost/127.0.0.1을 계속하십시오. 또한 샘플 코드를 더 자세하게 개선하십시오. – Ashif
그것은 IP 문제가 아니므로 클라이언트가 로그 페이지를 가지고 있으므로 클라이언트가 서버를 찾지 못하면 클라이언트가 로그 페이지에 머물러있게됩니다. 또한 서버는 클라이언트에 4 개의 정보를 보내고, 첫 번째는 메시지 유형입니다 (예 : : 채팅 메시지 또는 뉴스 메시지), 두 번째 새 헤드 라인 (QString) 세 번째는 뉴스 (QString)의 내용이고 마지막은 소스 (QString)이며 클라이언트 서버는 두 번째 첫 번째 정보 세 번째 정보 (긴 텍스트)를 수신하지 마십시오 –
두 번째 헤드 라인을 작성한 후 서버 -> waitForBytesWritten (4000) 지연에 의해 서버를 설정 한 다음 서버 -> 쓰기 (데이터); – Ashif