IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

question sur le controle winsock


Sujet :

VB 6 et antérieur

  1. #1
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 34
    Points
    34
    Par défaut question sur le controle winsock
    Salut tlm, je suis en train de coder un programme qui comporte un server et un client avec winsock...ma question est comment faire pour envoyer des datas via winsock mais seulement a un utilisateur(e)
    EX:

    un client se connecte requestID = 285
    comment envoyer la string "Bienvenu(e)" a cette utilisateur(e) sans l'envoyer a tout les utilisateurs connecter...

    Merci d'avance

  2. #2
    Membre à l'essai
    Inscrit en
    Février 2008
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 43
    Points : 18
    Points
    18
    Par défaut
    je sais pas trop t'aider car le prof nous a vite montré ça et je n'ai pas encore beaucoup regardé mais si tu veux j ai un programme qui peut t aider
    c est un chat et quand un 2eme client se connecte le 1er recois un message disant que le client 2 c est connecté
    donc ça doit être ça à mon avis
    j aurais bien regardé mais là j ai un autre problème comme tu as pu le voir sur mon poste


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Case "AJOUT CLIENT"
                    listClient.AddItem Message(1)
                    textRecu.Text = textRecu.Text & "SERVEUR : " & Message(1) & " s'est connecté" & vbCrLf & vbCrLf
    TextRecu étant là textbox qui recoit le message
    et listClient étant une listbox dans la quelle se trouve tous les utilisateurs connecté

    Voilà j'espère que ça pourra t'aider

  3. #3
    Membre expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 70
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Points : 3 696
    Points
    3 696
    Par défaut
    Ta question est plutot incongrue. En effet les composants winsock permettent de mettre en oeuvre une communication entre un serveur et un client. L'inverse de ta question est interessante, à savoir comment faire du broadcast ( emettre un message à tous les clients connectés). La c'est délicat car on n'est plus dans un mode naturel des communications par Winsock. Dans ce cas , le serveur est obligé d'emmetre autant de fois le message qu'il y a de clients connectés, chaque client etant un controle winsock distinct au sein du serveur.

    Donc pour répondre à ta question, il n'y a rien à faire de spécial pour envoyer des datas via winsock mais seulement a un utilisateur(e)
    En général, on ne demande de conseils que pour ne pas les suivre ou, si on les a suivis, reprocher à quelqu'un de les avoir donnés
    (ALEXANDRE DUMAS)

    N'hésitez pas à visiter ma page de contributions

  4. #4
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 34
    Points
    34
    Par défaut
    Ce que je veux dire c'est si il y a 6 clients connecT au server, et le server envoie "Bienvenu" alors toutes les utilisateures le recverons mais comment envoyer ce message seulement a l'utilisateur desirer

  5. #5
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 34
    Points
    34
    Par défaut
    Citation Envoyé par Delbeke Voir le message
    à savoir comment faire du broadcast ( emettre un message à tous les clients [/U][/I][/B]
    tu as raison, jai testé cela et le server envoie seulement a un utilisateur, alors je re-formule ma question

    Comment emmettre un message a tous les utilisateurs connecté?

  6. #6
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    et qu'as tu déjà écris ...? arrive tu à gérer tes 6 connexions..? comment.?

  7. #7
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 34
    Points
    34
    Par défaut
    oui les 6 clients sont ok, mais je narrives pas a envoyer des datas a tous les utilisateurs

  8. #8
    Membre expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 70
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Points : 3 696
    Points
    3 696
    Par défaut
    Comme le dit bbil que je salue au passage

    et qu'as tu déjà écris ...? arrive tu à gérer tes 6 connexions..? comment.?
    En général, on ne demande de conseils que pour ne pas les suivre ou, si on les a suivis, reprocher à quelqu'un de les avoir donnés
    (ALEXANDRE DUMAS)

    N'hésitez pas à visiter ma page de contributions

  9. #9
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 34
    Points
    34
    Par défaut
    j'veux juste savoir comment faire du 'BroadCast' avec Winsock...

  10. #10
    Membre expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Points : 3 685
    Points
    3 685
    Par défaut
    C'est donc la question opposée à la première...
    Pour VB6 : N'oubliez pas d'aller voir la FAQ et les Tutoriels
    Vous trouvez une reponse particulierement utile ? Votez pour !

  11. #11
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 34
    Points
    34
    Par défaut
    c'est pourquoi j'ai ecrit:

    Envoyé par Delbeke Voir le message
    à savoir comment faire du broadcast ( emettre un message à tous les clients [/u][/i][/b]
    tu as raison, jai testé cela et le server envoie seulement a un utilisateur, alors je re-formule ma question

    Comment emmettre un message a tous les utilisateurs connecté?

  12. #12
    Membre expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Points : 3 685
    Points
    3 685
    Par défaut
    C'est pourquoi Delbeke t'avais répondu :

    Dans ce cas , le serveur est obligé d'emmetre autant de fois le message qu'il y a de clients connectés, chaque client etant un controle winsock distinct au sein du serveur.
    donc, en TCP/IP tu oublies le broadcast, ou alors tu mets ton winsock en UDP.
    Pour VB6 : N'oubliez pas d'aller voir la FAQ et les Tutoriels
    Vous trouvez une reponse particulierement utile ? Votez pour !

  13. #13
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 535
    Points
    5 535
    Par défaut
    Citation Envoyé par OhMonBato Voir le message
    C'est pourquoi Delbeke t'avais répondu :

    donc, en TCP/IP tu oublies le broadcast, ou alors tu mets ton winsock en UDP.
    Bonjour (et un salut à OhMonBato) :

    De mémoire et sans pourvoir essayer (pas sur réseau) :

    Il faut en effet utiliser le protocole UDP.

    Protocole pour lequel l'adresse de broadcast revêt la forme XXX.XXX.X.255

    L'utilisation de 255 signifie adresse de broadcast et concerne toutes les IP du réseau.
    Si ma mémoire est bonne, donc, il faut utiliser une des adresse IP et transformer en 255 ses trois derniers chiffres (et chaque IP devient alors elle-même à son tour émettrice)

    Tout cxelà reste à vérifier (trop loiin dans ma pauvre mémoire).

  14. #14
    Membre expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 70
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Points : 3 696
    Points
    3 696
    Par défaut
    Trouvé sur MSDN

    L'attribution d'une valeur un à tous les bits d'une adresse IP, soit 255.255.255.255, forme l'adresse de diffusion limitée. L'envoi d'un datagramme UDP à cette adresse se traduit par la distribution du message à tous les hôtes figurant sur le segment de réseau local. Dans la mesure où les routeurs ne transfèrent jamais les messages envoyés à cette adresse, seuls les hôtes qui se trouvent sur le segment de réseau reçoivent ce message.

    Il est possible de diriger les diffusions vers des portions spécifiques d'un réseau en attribuant une valeur à tous les bits de l'identificateur de l'hôte. Par exemple, pour envoyer une diffusion à tous les hôtes du réseau identifiés par les adresses IP commençant par 192.168.1, utilisez l'adresse 192.168.1.255.
    On y lit clairement que les paquets UDP de brodcast sont arrétés par les routeurs. Et qu'on ne peut faire un broadcast que sur une portien de réseau. (Ca serait rigolo si on faisait du broadcast a travers internet, c'est déjà pas mal le foutoir, mais la !)
    Donc, si tu utilises le protocole classique TCP/IP, une seule solution, envoyer le message explicitement à chaque client connecté.
    En général, on ne demande de conseils que pour ne pas les suivre ou, si on les a suivis, reprocher à quelqu'un de les avoir donnés
    (ALEXANDRE DUMAS)

    N'hésitez pas à visiter ma page de contributions

Discussions similaires

  1. Question sur le control Wizard
    Par Moony Light dans le forum ASP.NET
    Réponses: 3
    Dernier message: 15/01/2008, 23h52
  2. Renseignements sur le Controle Winsock
    Par momongana dans le forum VB 6 et antérieur
    Réponses: 25
    Dernier message: 19/12/2007, 15h46
  3. [MFC] petites questions sur les controles
    Par Nelmo dans le forum MFC
    Réponses: 3
    Dernier message: 01/06/2006, 16h40
  4. Question sur un controle de type "button"
    Par Invité dans le forum Windows
    Réponses: 2
    Dernier message: 29/05/2004, 11h30
  5. Réponses: 3
    Dernier message: 11/05/2004, 18h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo