Recherche Client qui recoit des image en bmp d'un serveur, une image par seconde

Signaler
Messages postés
46
Date d'inscription
vendredi 17 juin 2005
Statut
Membre
Dernière intervention
1 mars 2006
-
Homerrrrr
Messages postés
22
Date d'inscription
mercredi 23 novembre 2005
Statut
Membre
Dernière intervention
22 février 2006
-
Bonjour à tous,
Voila je suis à la recherche d'un Client qui recoit des image en bmp d'un serveur,
ce serveur envoi des images tous les seconde a mon client.
merci de votre aide par avance
a+

3 réponses

Messages postés
22
Date d'inscription
mercredi 23 novembre 2005
Statut
Membre
Dernière intervention
22 février 2006

Salut,

J'ai réalisé également du transfert d'image de serveur à client récemment mais avec des JPG parce que bcp moins lourd.
Il s'agit simplement de transformer ton image (qui est un fichier) en tableau de byte du côté serveur en faisant qqch du genre :

System.IO.FileStream fs = new System.IO.FileStream((string)o[i],System.IO.FileMode.Open, System.IO.FileAccess.Read);

Byte[] image = new Byte[fs.Length];
fs.Read(image, 0, image.Length);
fs.Close();

Tu transfères ensuite ce tableau de byte vers ton client par le moyen de communication que tu as choisi (sockets ou remoting, etc...) et tu récupères du côté client avec un MemoryStream ou un FileStream.

Par exemple,

System.IO.MemoryStream ms = new System.IO.MemoryStream(image);
pictureBox1.Image = Image.FromStream(ms);
ms.Close();
Messages postés
46
Date d'inscription
vendredi 17 juin 2005
Statut
Membre
Dernière intervention
1 mars 2006

re

mon moyen de communication est en socket,

pourrait tu me donner le code entier car jsui pa tres doué en programmation

a+
Messages postés
22
Date d'inscription
mercredi 23 novembre 2005
Statut
Membre
Dernière intervention
22 février 2006

J'ai malheureusement pas un code tout fait sous la main.
Je te conseille de te documenter sur les techniques client/serveur avec socket.

Il faut savoir que tu dois créer du coté serveur un TcpListener qui se chargera d'écouter les demandes de connexion sur le port et l'adresse que tu lui auras spécifié.

TcpListener EcouteClient = new TcpListener(IPAddress.Parse("127.0.0.1"), 8383);
TcpListener.Start();

Coté client tu dois créer un Socket qui va se connecter sur le port et l'adresse IP du serveur.

Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
client.Connect(new IPEndPoint(IPAddress.Parse("127.0.0.1"),8383));

Depuis le serveur, pour accepter un client tu dois faire :

Socket SocketClient = TCP_Listener.AcceptSocket();

Aprés il y a du boulot, cherche sur le forum de http://csharpfr.com.