SuperSonik
Erfahrenes Mitglied
Hallo Leute,
ich habe ein Problem mit QTcpSocket.
Ich bin soweit, dass ich eine Verbindung aufgebaut habe, und eine Anfrage nach Daten ist auch erfolgreich versendet.
Jetzt habe ich das Signal readyRead() mit einem eigenen Slot getData() verbunden.
Das Problem ist, dass ich nicht sagen kann was ich für Daten bekomme und wie groß die
sind. Ich möchte eigentlich alles was ankommt hintereinander eine Datei schreiben.
Alle Versuch sind aber bisher kläglich gescheitert. Ich bekomme im Moment Speicherzugriffsfehler.
Hier mein jetziger Stand:
ich habe ein Problem mit QTcpSocket.
Ich bin soweit, dass ich eine Verbindung aufgebaut habe, und eine Anfrage nach Daten ist auch erfolgreich versendet.
Jetzt habe ich das Signal readyRead() mit einem eigenen Slot getData() verbunden.
Das Problem ist, dass ich nicht sagen kann was ich für Daten bekomme und wie groß die
sind. Ich möchte eigentlich alles was ankommt hintereinander eine Datei schreiben.
Alle Versuch sind aber bisher kläglich gescheitert. Ich bekomme im Moment Speicherzugriffsfehler.

Hier mein jetziger Stand:
Code:
void getData(void){
QDataStream in(tcpsocket);
in.setVersion(QDataStream::Qt_4_2);
QFile confdatei("testdata.txt");
confdatei.open(QFile::WriteOnly);
QTextStream conf(&confdatei);
if(blockSize == 0xFFFF){
return;
}
if (blockSize == 0) {
if (tcpsocket->bytesAvailable() < (int)sizeof(quint16))
return;
in >> blockSize;
}
if(blockSize == 0xFFFF){
return;
}
if (tcpsocket->bytesAvailable() < blockSize)
return;
QString nextData;
in >> nextData;
conf << nextFortune;
};//getData