begin process at 2010 02 10 03:47:09
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Windows

 > 

Formulaire / Winforms / Controls

 > 

Form + multithreading


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

Form + multithreading

jeudi 21 juin 2007 à 14:10:05 | Form + multithreading

aminert2100



Salut,

J'ai un problème concernant le multithreading sous C#.NET 2005, j'ai essayé de chercher une solution dans le web mais sans résultat.

En effet je veux crée une application de messagerie instantané de style Skype ou MSN. Alors j'ai besoin d'un thread qui fait l'écoute de port avec la classe TcpListener, et à chaque demande de connexion le thread doit lancer une nouvelle instance d'une fenêtre (CahtForm) nécessaire pour l'échange des messages entre le deux client. De point de vu code tous va bien (sans erreurs) mais lorsque un client demande la connexion la fenêtre (ChatForm) se lance mais elle se bloque de façon que l'utilisateur ne peut rien faire car il voit une fenêtre blanche sur son écran !!! Je sais pas quoi faire pour remédier à se problème !!!

Voici un peu le code du thread utilisé :

private void Start()

        {

            try

            {

                MyTcpListener = newTcpListener(MyAdress,port);

                MyTcpListener.Start();

                 while (true)

                {

                      MyTemTcpClient = MyTcpListener.AcceptTcpClient();

 

                      ChatForm MyChatForm = newChatForm();

                      MyChatForm.Client=MyTemTcpClient ;

                      MyChatForm.Show() ;

                 

                }

            }

            catch { MessageBox.Show("Impossible de démarrer le serveur"); }

        }

 

J'attends vos réponses si non vos clarifications et vos remarques constrictives !!!

Merci d'avance pour votre aide !!!

              Que vive le multithreading !!


jeudi 21 juin 2007 à 15:08:13 | Re : Form + multithreading

Zoso9

j'ai le même probleme, je pense que si tu utilise MyChatForm.ShowDialog() au lieu de MyChatForm.Show(), ca ira mais tu ne pourras avoir qu'une fenêtre ouverte à la foi. si tu trouves une solution, je suis preneur ^^
jeudi 21 juin 2007 à 16:45:41 | Re : Form + multithreading

the_wwt

Bonjour,
à première vue si c'est comme dans tous les langage,
il te faut un thread pour l'affichage et un autre pour le traitement.
La je pense que ta ChatForm est géré dans le thread du listening...
Ainsi tu es bloqué par la fonction AcceptTcpClient.... Qui empêche à la forme de se dessinner...
Me trompai-je?
cdlt,
Pierrick
jeudi 21 juin 2007 à 22:49:29 | Re : Form + multithreading

aminert2100


Slaut,
en effet j'ai crée un  envent qui se déclanche lors de connexion d'un nouveau client mais la même chose !!! 

@++


Cette discussion est classée dans : client, fenêtre, thread, multithreading, mytcplistener


Répondre à ce message

Sujets en rapport avec ce message

Problème de thread. Fenêtre et thread externe. [ par ivanoff1 ] Bonjour tout le monde !J'aimerais vous relater un problème qui m'arrive dans mon projet en ce moment.J'ai une classe externe (Socket_Serveur) et j'ai Multi threading using TCP and socket [ par gdupasqu ] Bonjour,je suis entrain d'écrire un programme (client et serveur).Le serveur fonctionne comme ceci: 1. Le serveur écoute sur un port fixé. 2. Lorsqu'u Multi Threading en utilisant TCP [ par gdupasqu ] Bonjour,je suis entrain d'écrire un programme (client et serveur).Le serveur fonctionne comme ceci:1. Le serveur écoute sur un port fixé.2. Lorsqu'un Thread + NetworkStream [ par JuS ] Je vais vous exposer mon problème (c'est un peu long à lire et à comprendre...)Je programme un programme client/serveur.Le client, en C#, communique a Client/Serveur - Asynchrone... [ par DaOuch ] Bonjour à tous.Je voudrais faire un logiciel de communication entre client et serveur mais que cette communication soit asynchrone.J'ai utilisé un Thr Petit problèmeThread .net2 [ par gimli123 ] Bonjour, je suis en train de faire un client irc... et j'avais voulu le faire avec le .net2, car je le trouve plus sympa pour les interfaces graphique Fenêtre modale [ par DarKplayer ] Bonjour,Je débute en C#, je voudrais créer une fenêtre Utilisateurs qui s'ouvrirait en modale sur la FenetrePrincipale, j'utilise pour ça ShowDialog() Threads [ par Cisaks ] Bonjour ! Donc voici mon probleme. J'ai un programme qui appel une thread pour activer un serveur asynchrone, elle mémé a deux autres threads qui sont Thread et erreur [ par sheorogath ] bjr a tous , je vien d'un environnement java et ayant envi de me changer les idee j'ai decider d'essayer de faire passe une de mes programme java en c Problème arrêt thread c# [ par Passboss87 ] Bonjour, je suis débutant en visual studio 2005.J'ai voulu créer un chat serveur/client et tout marche quasiment.Et j'arrive enfin au moment où je doi


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,234 sec (3)

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