Nachrichten ständig empfangen !!!
-
Hallo,
Ich habe in Windows einen Client geschrieben der auf einen Server Verbindet.
Soweit bin ich in Linux mit dem umschreiben auch schon nur muss ich noch eine Funktion hinzufügen die Ständig nachrichen empfängt und diese ausgibt und da ist mein Problem in windows sah das ungefähr so aus ://.... while(rc!=SOCKET_ERROR) { while(kbhit()) { Sleep(1); c=getch(); putch(c); if(c==13) { printf("\n"); inpBuf[inpBufPos++]=13; inpBuf[inpBufPos++]=10; rc=send(s,inpBuf,inpBufPos,0); inpBuf[0]='\0'; inpBufPos=0; } else { inpBuf[inpBufPos++]=c; } } inpBuf[inpBufPos]='\0'; FD_ZERO(&fdSetRead); FD_SET(s,&fdSetRead); timeout.tv_sec=0; timeout.tv_usec=0; while((rc=select(0,&fdSetRead,NULL,NULL,&timeout))>0) { rc=recv(s,buf,1023,0); // server hat die verbindung beendet ? if(rc==0) { printf("Server hat die Verbindung getrennt!\n"); exit(1); // fehler: beenden! } else if(rc==SOCKET_ERROR) { printf("Error: recv failed: %d\n",WSAGetLastError()); exit(1); } // empfangene daten ausgeben buf[rc]='\0'; printf("%s\n",buf); //.....
Und das muss ich irgendwie nach Linux umcoden aber daa ist wie gesagt mein Problem
Hoffe ihr könnt mir da helfen
Gruß
-
wo ist dein Problem? man: select gibt es auch unter Linux
-
Aber wenn ich das so einbaue sagt er das es kein SOCKET_ERROR gibt wie heisst das dann ?
Wenns so nciht geht ?
Ich brauche da echt eure Hilfe o_O
Gruß
-
nein, gibt es auch nicht. Kannst du aber leicht selber definieren als -1
-
Danke
ähm hast du für mich vllt noch ein Paar Links zu Seiten die zeigen wie man sowas macht ?Gruß
-
wie man was macht?
-
Ich meine Tutorials zur Netzwerkprogrammierung mit Sockets unter Linux dazu Tutorials / Detusch / ob ihr mir da was empfehlen koennt ?
Gruß
-
zotteljedi.de ist super. Ansonsten hol dir ein Buch, da es schon komplexes Thema ist...