begin process at 2010 02 09 22:55:02
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Réseau & Internet

 > 

Client - Serveur

 > 

serveur et plusqu'un client


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

serveur et plusqu'un client

dimanche 22 février 2009 à 23:29:51 | serveur et plusqu'un client

houcem001

Salut je suis entrain de programmer une plateforme de discussion mais j'ai un probleme pour envoyer des messages à un client sachant son adresse IP . dans mon code ci dessous je peux pas envoyer qu'à un seul client [CODE] namespace PlateformeDeDiscussion { class Clients { private static string reponse = null; private static string demande = null; public static void demander(string s) { demande = s; } public static string reponser() { return reponse; } public static void rep() { reponse = null; } public void connecter(String Adress, int port) { try { TcpClient tcpClient = new TcpClient(Adress, port); ThreadPool.QueueUserWorkItem(ecriture,tcpClient); using (NetworkStream networkStream = tcpClient.GetStream()) { using (StreamReader reader = new StreamReader(networkStream)) { using (StreamWriter writer = new StreamWriter(networkStream)) { writer.AutoFlush = true; while (true) { reponse = reader.ReadLine(); } } } } } catch (Exception e) { } //Console.WriteLine(e.Message); finally { Serveurs.tclient.Clear(); } } public void ecriture(object info) { using (TcpClient tcpClient = info as TcpClient) using (NetworkStream networkStream = tcpClient.GetStream()) { using (StreamReader reader = new StreamReader(networkStream)) { using (StreamWriter writer = new StreamWriter(networkStream)) { // flux de sortie non bufferisé writer.AutoFlush = true; while (true) { if (demande != null) demande += "\r\n"; writer.Write(demande); demande = null; Thread.Sleep(50); } } } } } } class Serveurs { private static string reponse2; private static string demande2; public static ArrayList tclient = new ArrayList(); public static List mesClients = new List(); public static void demander(string s) { demande2 = s; } public static string reponser() { return reponse2; } public static void rep() { reponse2 = null; } public static void connecter(int port) { TcpListener ecoute = null; try { ecoute = new TcpListener(IPAddress.Any, port); ecoute.Start(); ThreadPool.SetMinThreads(10, 10); ThreadPool.SetMaxThreads(10, 10); TcpClient tcpclient = null; while (true) { tcpclient = ecoute.AcceptTcpClient(); ThreadPool.QueueUserWorkItem(lire, new Clientt() {CanalTcp = tcpclient}); ThreadPool.QueueUserWorkItem(ecrire, new Clientt() {CanalTcp = tcpclient}); tclient.Add((tcpclient.Client.RemoteEndPoint as IPEndPoint).Address.ToString()); } } catch (Exception ex) { //Form3 form3 = new Form3(); //form3.Text = ex.Message; } finally { ecoute.Stop(); } } public static void lire(Object infos) { Clientt client = infos as Clientt; try { using (TcpClient tcpClient=client.CanalTcp) { using (NetworkStream networkStream = tcpClient.GetStream()) { using (StreamReader reader = new StreamReader(networkStream)) { using (StreamWriter writer = new StreamWriter(networkStream)) { // writer.AutoFlush = true; while (true) { reponse2 = reader.ReadLine(); } } } } } } catch (Exception e) { // Form3 form3 = new Form3(); //form3.Text = e.Message; } } public static void ecrire(Object infos2) { Clientt client1 = infos2 as Clientt; try { using (TcpClient tcpClient=client1.CanalTcp) { using (NetworkStream networkStream = tcpClient.GetStream()) { using (StreamReader reader = new StreamReader(networkStream)) { using (StreamWriter writer = new StreamWriter (networkStream)) { writer.AutoFlush = true; demande2 = null; while (true) { if (demande2 != null) demande2 += "\r\n"; writer.Write(demande2); demande2 = null; Thread.Sleep(50); } } } } } } catch (Exception e) { //Form3 form3 = new Form3(); //form3.Text = e.Message; } } internal class Clientt { public TcpClient CanalTcp { get; set; } //public int NumClient { get; set; } } } } [/CODE] merci de m'aider
lundi 23 février 2009 à 12:19:33 | Re : serveur et plusqu'un client

crougni

Salut

je crois qu'il y a eut un gros problème de retour chariot là

Sinon, tu développe un soft Serveur et un soft Client qui se connecte à ce serveur et permet dialoguer avec l'ensemble des clients connectés , ou bien un soft qui fait office de client et de serveur en même temps, et où les utilisateurs doivent se connecter sur chacun des utilisateurs avec lesquels ils souhaitent dialoguer ???


lundi 23 février 2009 à 14:25:40 | Re : serveur et plusqu'un client

houcem001

j'ai pas encore implanté le code de connexion entre 2 clients.
mon probleme pour le moment et que je peux pas envoyer un message à un client spécifié depuis le serveur.
donc je veux envoyer un message à un client en entrant comme paramètre son adresse IP.
merci


Cette discussion est classée dans : public, static, using, tcpclient, networkstream


Répondre à ce message

Sujets en rapport avec ce message

static parametre [ par sheorogath ] j'ai encore un petit probleme de thread a cause d'uyne methode static que je ne peu pas mettre normale et d'un parametre je vous montre la source :/** Se Connecter à un partage de fichiers: TcpClient, TcpListener, NetworkStream [ par saadaouimouad ] Bonjour, Dans un partage de fichiers je dois écouter scruter les messages texte reçus dans une machine hôte pour les stocker dans des tables SQL Serve Problème d'accès à des variables [ par goutbouyo ] Salut,Je débute en C# et j'ai un petit problème de variables :J'ai ma class MyAI où qont définies des variables:class MyAI : VG.Common.Player{        Public Private Static... [ par lagoelle ] Salut,Je me rends compte que je stagne en C# et ce parce qu'il me manque certainement les fondements, les bases des choses importantes à assimiler (en Problèmes de création d'un service Windows [ par nyoto ] Bonjour à tous,Ne développant pas depuis très longtemps en .Net je galère grave pour créer un service windows récupérant automatiquement à intervalles Generer des points aleatoirement !? [ par jimmy69 ] Bonjour  a tous ,Je suis sous visual studio . net et j'apprends le c sharp !Je me suis fait une class que j'ai nomme MyPoint.cs que voici :----------- WebService C# (variable non modifiée !!) [ par mesdevs ] Bonjour, Je débute tout juste en C# (Visual Studio 2005), et j'ai déjà un problème (désolé si ça vous parait trivial, mais moi ça me prend la tête) : classe static dans classe static [ par linx20 ] Voila en gros je veux inclure une classe static ds mon autre classe static : public abstract class MaClasseStatic1{public static MaClasseStatic2 st2;/ génération d'un numéro de client unique au format : XX999999 [ par g_marvin ] Un numéro de client unique en base pour affecter a un nouveau client. <SPAN style="mso-ta Accès partagés entre threads [ par CMatt ] Bonjour à tous! voici qq lignes de codes qui résume ce que je fais : using System; using System.Drawing; using System.Threading; public class Anima


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
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 : 0,374 sec (4)

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