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++/CLI Discussion :

communication C++ C# par socket


Sujet :

C++/CLI

  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    107
    D�tails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 107
    Par d�faut communication C++ C# par socket
    Bonjour � tous, chui un petit nouveau ici. Je ne sais pas si ma question est sur le bon forum.

    Je fais une communication par socket entre un serveur C++ et un client C#.
    Mon pb: l'�change des donn�es

    Pour �changer les donn�es entre les deux, j'utilise le NetworkStream.
    Pour envoyer un tableau de double au serveur, mon client passe par une transformation en tableau d'octets:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    private void sendArrayBis()
    		{
    			//mon tableau de test à envoyer
    			double[] test=new double[]{1.22,22.3334};
     
    			//mon tableau d'octets à remplir
    			Byte[] data=new byte[8 * test.Length];
     
    			//transformer mon tabl. de double en tabl. d'octets
    			int idx=0;
    			for(int cpt=0;cpt<test.Length;cpt++){
    				System.BitConverter.GetBytes(test[cpt]).CopyTo(data,idx);
    				idx+=8;
    			}
     
    			//envoyer (_stream <NetworkStream>)
    			_stream.Write(data,0,data.Length);
    			_stream.Flush();
    		}
    Le serveur le recoit (, connait le nbr de double � recevoir) et le convertit en en double*

    1�) Est ce la bonne et meilleure m�thode pour envoyer mes donn�es par la socket ?

    2�) Quid d'un tableau n dimensions ? On parcourt le tableau et on met tous les double � la suite dans un tableau d'octets ?
    RQ : Mon serveur attend un double**

    Merci de votre aide...

  2. #2
    Membre �m�rite
    Homme Profil pro
    Consultant ERP
    Inscrit en
    F�vrier 2004
    Messages
    644
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activit� : Consultant ERP

    Informations forums :
    Inscription : F�vrier 2004
    Messages : 644
    Par d�faut
    Ne pas oublier que l'envoi de donn�es par socket est l'envoi d'octet.

    Il est � toi de t'amuser � sp�cifier la taille de ton tableau, le nombre de colonnes et de ligne. Ton tableau �tant � deux dimensions, essaie de voir comment le repr�senter lin�rairement ( l'astuce c'est qu'un tableau multidimensionnel est lin�raire).

    Si tu d�sires propager de l'objet � travers des sockets pourquoi n'emplois-tu pas du CORBA ou du SOAP ?

  3. #3
    Membre confirm�
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    107
    D�tails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 107
    Par d�faut
    * OK pour les octets, j en suis bien conscient.
    Je pense que pour la transfo en binaire, je vais utiliser le BinaryWriter.

    * Pour le tableau 2 dimensions, je vais faire ca:
    1�) envoi de la taille du tableau (2 int)
    2�) envoi de tous les objets du tableau � la suite

    * Pour Corba et SOAP, je n'ai pas le choix: c 'est une contrainte de passer par socket. En fait, moi je d�veloppe le client C# qui discutera avec le server C++, qui lui marche deja par socket. Donc je me suis fait pour mes tests, un serveur C++ ecoutant sur une socket.
    Voila.

    Au final, penses-tu que tout ca (transfo. binaire, protocole taille puis objets) est viable ?

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Communication C/Java par socket
    Par midotek dans le forum R�seau
    R�ponses: 3
    Dernier message: 05/12/2008, 20h06
  2. Communication par socket
    Par cybermarcel dans le forum Ruby
    R�ponses: 5
    Dernier message: 14/01/2007, 23h08
  3. Probl�me de communication par socket
    Par odjosc dans le forum R�seau/Web
    R�ponses: 3
    Dernier message: 20/06/2006, 14h57
  4. [Omnis] Communication par Socket
    Par y0p dans le forum WinDev
    R�ponses: 4
    Dernier message: 15/06/2006, 09h02
  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