Forum Clubic

Problème socket !

Salut.
Je suis en train d’essayer d’envoyer une image par socket pour faire du strealing.

Cependant lorsque je teste mon programme il plante.
Je l’éxécute en pas à pas et hop ce message s’affiche

http://leon.baz.free.fr/probleme.jpg

Quelqu’un pourrait me dire ce que signifie exactement cette erreur.

[cpp]#define SEGMENT 15
LRESULT CALLBACK VideoStreamCallback(HWND hWnd, LPVIDEOHDR lpVHdr)
{
// nous decoupons l’image a envoyer car celle-ci
// correspond a une quantite non negligeable de donnees
// qui sera decouper par la couche IP et qu’il faudra ‘recoller’
// dans l’application cliente.
int y ;
for(y=0;y<(120/SEGMENT);y++)
{
Form1->CSvideo1->Socket->SendBuf(lpVHdr->lpData+(y1603SEGMENT),1603*SEGMENT) ;
// on laisse le temps a l’application cliente de recuperer cette partie (1 milliseconde)
// Sleep(1) ;
}
return TRUE ;
}[/cpp]

Ca plante à cette ligne

[cpp]Form1->CSvideo1->Socket->SendBuf(lpVHdr->lpData+(y1603SEGMENT),1603*SEGMENT) ;[/cpp]

CSvideo1 étant un TserverSocket sous builder.

Merci d’avance

a premiere vue tu n’initialise pas ton socket et tu l’ouvre pas non?

Ben si pourtant car mon firewall s’ouvre et tout.
Et j’arrive à me connecter sur le serveur avec telnet pour voir si il est bien créé et il l’est bien.

Hop,
A mon avis ca ne vient pas de ta couche reseau qui n’a pas de raison de planter. Ca vient plustot de ton deplacement dans ton buffer image

[cpp]
lpVHdr->lpData+(y1603SEGMENT), 1603*SEGMENT
[/cpp]

Je commencerais par checker ca perso, savoir si tu ne depasse pas ton buffer etc.

EDIT:
Je ne vois pas vraiment pourquoi tu decoupe tes données sachant que la couche reseau le fait deja pour toi. A mon avis tu te prend la tete pour rien.

RE-EDIT:
En fait non, ca doit effectivement venir de ton socket qui n’est pas connecte au serveur vu le message d’erreur :slight_smile: désolé.