Recherche Client qui recoit des image en bmp d'un serveur, une image par seconde
cs_doberman7578
Messages postés46Date d'inscriptionvendredi 17 juin 2005StatutMembreDernière intervention 1 mars 2006
-
10 janv. 2006 à 21:20
Homerrrrr
Messages postés22Date d'inscriptionmercredi 23 novembre 2005StatutMembreDernière intervention22 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+
A voir également:
Recherche Client qui recoit des image en bmp d'un serveur, une image par seconde
Homerrrrr
Messages postés22Date d'inscriptionmercredi 23 novembre 2005StatutMembreDernière intervention22 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();
Homerrrrr
Messages postés22Date d'inscriptionmercredi 23 novembre 2005StatutMembreDernière intervention22 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 :