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

C# Discussion :

Problème communication par socket entre deux applis (c# et java)


Sujet :

C#

  1. #1
    Candidat au Club
    Inscrit en
    Mars 2007
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut Problème communication par socket entre deux applis (c# et java)
    Bonjour,

    J'ai une appli serveur sous java et je développe un client en c#. Mais mon client ne veux pas envoyer de message au serveur, il peut se connecter, mais impossible d'envoyer un message.
    Le serveur qui est en Java trourne depuis longtemps avec des clients Java, donc le problème ne vient pas de là.
    Le code que j'utilise pour envoyer un message est le suivant :

    Socket m_sock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
    m_sock.Connect(IPAddress.Parse("172.16.1.101"), 80);
    Byte[] byteDateLine = Encoding.ASCII.GetBytes("MonMessage");
    m_sock.Send(byteDateLine);

    Si vous pouviez m'aider ce serait top, merci d'avance.

    Pedro

  2. #2
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Pourquoi dis-tu que cela ne fonctionne pas ? Quel est le message d'erreur généré (s'il y en as un) ? Es-tu sur d'être connecté au serveur ? As-tu essayé en changeant l'encodage de ta chaine de caractères ?

  3. #3
    Candidat au Club
    Inscrit en
    Mars 2007
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    il n'y a pas de message d'erreur, à aucun moment je ne reçoit de flux d'un message, alors que si je connecte un client développé en java là il reçoit les messages.
    Et mon socket est vraiment connecté, car le serveur peut lui envoyer un message au client en c#.
    Et du côté du client en c#, le message pour lui est bien envoyé, donc je me demande si il n'y a pas une histoire d'encodage différent, mais je ne vois vraiment pas.

  4. #4
    Candidat au Club
    Inscrit en
    Mars 2007
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    J'ai trouvé la solution, le code pour envoyer un message à un server Java est celui-ci :

    TcpClient tc=new TcpClient("127.0.0.1",80);
    NetworkStream ns=tc.GetStream();
    StreamWriter sw=new StreamWriter(ns);
    sw.WriteLine("Mon message");
    sw.Flush();

    Voilà, problème résolu

  5. #5
    Membre éprouvé Avatar de neptune
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 835
    Points : 958
    Points
    958
    Par défaut
    Tu fait à peu près la même chose, sauf que tu ne te connectes pas au même host! Le fait que l'un soit écrit en java et l'autre en .net ne change absolument rien.

  6. #6
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Bonjour,

    On a eu le même problème, il y a qq temps (socket c# <--> socket delphi) et on est arrivé à la même solution : sur le même PC, il ne faut pas utiliser l'addresse IP du PC, mazis 127.0.0.1.
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème accès aux propriétés entre deux classes liées par many-to-one
    Par moha1984 dans le forum Persistance des données
    Réponses: 1
    Dernier message: 21/06/2010, 10h07
  2. Communication par pipe entre deux processus
    Par mohamedz dans le forum POSIX
    Réponses: 9
    Dernier message: 02/03/2010, 17h50
  3. Communication par socket TCP entre module windows et linux
    Par =o0 MOH =0o= dans le forum Réseau
    Réponses: 2
    Dernier message: 29/03/2007, 17h04
  4. Problème de communication par socket
    Par odjosc dans le forum Réseau/Web
    Réponses: 3
    Dernier message: 20/06/2006, 14h57
  5. Problème de communication par sockets
    Par Linio dans le forum Entrée/Sortie
    Réponses: 33
    Dernier message: 06/05/2006, 18h50

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