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

cs_doberman7578 Messages postés 46 Date d'inscription vendredi 17 juin 2005 Statut Membre Dernière intervention 1 mars 2006 - 10 janv. 2006 à 21:20
Homerrrrr Messages postés 22 Date d'inscription mercredi 23 novembre 2005 Statut Membre Dernière intervention 22 février 2006 - 11 janv. 2006 à 14:03
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

Homerrrrr Messages postés 22 Date d'inscription mercredi 23 novembre 2005 Statut Membre Dernière intervention 22 février 2006
11 janv. 2006 à 09:18
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();
0
cs_doberman7578 Messages postés 46 Date d'inscription vendredi 17 juin 2005 Statut Membre Dernière intervention 1 mars 2006
11 janv. 2006 à 11:33
re

mon moyen de communication est en socket,

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

a+
0
Homerrrrr Messages postés 22 Date d'inscription mercredi 23 novembre 2005 Statut Membre Dernière intervention 22 février 2006
11 janv. 2006 à 14:03
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.
0
Rejoignez-nous