bonjour a tous voila je fait apel a vous pour un probleme que je n'arrive pa a resoudre malgre mon obstination.Je poste le code pour que vous comprenier
(ps je suis encore un new bies en c).
voila donc la bete mon probleme etant que la boucle dans ma fonction process a savoir
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46 const char buffer[1000]; void process() { FILE *pp; pp=popen("cmd.exe","r"); long compt; for(compt=0;fgets!=NULL;compt++) { fgets(buffer,sizeof buffer,pp); } } int main(int argc, char *argv[]) { WSADATA WSAData; WSAStartup(MAKEWORD(2,0), &WSAData); SOCKET sock; SOCKET csock; SOCKADDR_IN sin; SOCKADDR_IN csin; sock = socket(AF_INET, SOCK_STREAM, 0); sin.sin_addr.s_addr = INADDR_ANY; sin.sin_family = AF_INET; sin.sin_port = htons(23); bind(sock, (SOCKADDR *)&sin, sizeof(sin)); listen(sock, 0); while(1) { int sinsize = sizeof(csin); if((csock = accept(sock, (SOCKADDR *)&csin, &sinsize)) != INVALID_SOCKET) { process(); send(csock,buffer,sizeof buffer, 0); } } }
semble faire merder mon socket la compilation reussi parfaitement bien mais imposible d'etre connecte sur le serveur en revanche si je retir la boucle for tout marche parfaitement bien et la je ne comprend donc pas pourquoi une simple boucle perturbe le fonctionnement de la socket si quelqu'un pouvait m'eclairer,et me dire dou vient le probleme merci d'avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 for(compt=0;fgets!=NULL;compt++) { fgets(buffer,sizeof buffer,pp); }
Partager