begin process at 2012 02 14 11:10:49
  Trouver un code source :
 
dans
 
Accueil > Forum > 

 > 

 > 

Probleme de Socket


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Probleme de Socket

mardi 18 janvier 2005 à 23:23:15 | Probleme de Socket

Basica

Bonjour, j'ai un petit problème avec winsock que je n'arrive pas à résoudre.

Mon but est de récuppérer des pages internet en utilisant winsock en C/C++ sous Dev-C++. Mon problème est le suivant:
Lorsque je récupère ce que m'envoie le serveur http avec la fonction recv, le nombre d'octet récupéré ce limite toujours à 1460 octets.
Evidament cela m'empèche de récupérer l'intégralité des pages html.

Voici le code source que j'utilise:


#include <stdio.h>
#include <winsock2.h>
#include <windows.h>
#pragma comment(lib, "ws2_32.lib")

SOCKET s;
in_addr addr;
sockaddr_in sin;
hostent * host;
WSADATA wsa;
char buf[8192];
int octet = 0;

int main(void)
{
WSAStartup(0x0202, &wsa);

s = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
if(s == SOCKET_ERROR){
printf("socket : %d\n", WSAGetLastError());
}

host = gethostbyname("192.168.0.6");

memcpy(&addr, host->h_addr, host->h_length);
sin.sin_family = AF_INET;
sin.sin_port = htons(80); // HTTP
sin.sin_addr = addr;

if(SOCKET_ERROR == connect(s,(sockaddr*)&sin, sizeof(sin))){
printf("connect : %d\n", WSAGetLastError());
}

strcpy(buf, "GET / HTTP/1.0\n\n"); // la requete http
send(s, buf, strlen(buf), 0);

octet = recv(s, buf, sizeof(buf), 0);

for(int i=0; i<octet; i++)
printf("%c", buf[i]);

closesocket(s);
WSACleanup();

return 0;
}

Après quelque recherches, il semblerait que ce problème est du à la limitation des trames ethernet à 1500 octet (simple supposition).

Si quelqu'un connait la solution de ce problème ou une manière de le contourner, j'aimerais vraiment qu'il m'en fasse part.


Cette discussion est classée dans : problème, socket, sin, buf, addr


Répondre à ce message

Sujets en rapport avec ce message

Problème avec l'API SOCKET [ par Crazyht ] Voila je me suis décider à faire un ocx pour remplacer Winsock. Mais voila, dans la methode qui est censée me placer le socket en écoute, j'ai découve socket et php [ par pablor ] Salut tout le monde,alors voilà j'ai un problème parce que je voudrais créer un logiciel qui me permette d'envoyer des infos dans une bd mysql (éventu Génie du Winsock ou es-tu? (DLL) [ par Oeil_de_taupe ] Hello les programmeurs,Je veux créé une DLL Winsock qui utilisara l'API Wsock32.dllDans mon programme j'initialise mon Socket et je le Bind...Mais le Re : Problème de Socket en VB pour un FTP [ par jack ] SalutSi tu t'intéressais à ce que tu reçois dans strGet, tu aurais surement la solution.Tu fais tout en aveugle !ValaJackNB : Je ne répondrai pas aux probleme de communication entre deux programme [ par smook ] re salut le dernier message que j ai poster c etait pour les socket et la librairie "libwsock.a" mais sayer j ai passer cette etape j ai reussi a fair probleme de communication entre deux programme [ par smook ] re salut le dernier message que j ai poster c etait pour les socket et la librairie "libwsock.a" mais sayer j ai passer cette etape j ai reussi a fair probleme de communication entre deux programme [ par smook ] re salut le dernier message que j ai poster c etait pour les socket et la librairie "libwsock.a" mais sayer j ai passer cette etape j ai reussi a fair problème winsock [ par programmationniste ] j'ai eu un problème avec le socket, en effet j'ai essayé un exemple tout ête our tester, j'ai fait une transmission de donnée via winsock, seulement v Socket sous Vista [ par oliversleep ] Salut tout le monde,j'ai remanié la source suivante :http://www.vbfrance.com/codes/SNIFFEUR-ROUTEUR_403 Problème de surfaces [ par mJuJu ] Bonjour à tous.Je ne sais pas si j'ai bien fait de poser ma question ici, mais enfin c'est là que cela me semble le plus approprié.La question est sim


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,154 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales