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

Threads & Processus C++ Discussion :

C++ Pipe + serialize + données


Sujet :

Threads & Processus C++

  1. #1
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2012
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2012
    Messages : 64
    Points : 47
    Points
    47
    Par défaut C++ Pipe + serialize + données
    Bonjour a tous

    J ai créé un service windows et une appliacation. Mon but est d'envoyer une liste du service à l'application.

    J ai a disposition un pipe entre le service et l'application.

    D'apres les recherches que j ai pu faite , j ai vu qu il etait preferable de serializer les donnees sauf

    que j ai cette erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     error C2039: 'serialize'*: n'est pas membre de 'ATL::CStringT<BaseType,StringTraits>'

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    friend class boost::serialization::access;
      template<class Archive>
      void serialize(Archive & ar, const unsigned int /*version*/)
      {
        // This is the only thing you have to implement to serialize a list
    	ar & mn_IdInterfaceReseau;
    	ar & mcs_Nom;
    	ar & me_Type;
     
      }
    Que me conseillez vous ?

    merci

  2. #2
    Expert confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    1 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 1 711
    Points : 4 442
    Points
    4 442
    Par défaut
    Hello,

    Il faut fournir une fonction serialize pour la classe ATL::CString (ou le convertir en std::string lors de la serialisation).

    Regarde la façon non intrusive de faire (pour pas avoir a toucher à la classe).

    Pour le passage par un string temporaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    friend class boost::serialization::access;
      template<class Archive>
      void serialize(Archive & ar, const unsigned int /*version*/)
      {
        // This is the only thing you have to implement to serialize a list
            std::string str = mcs_Nom.toStdString(); // aucune idée de la façon de convertir ça
    	ar & mn_IdInterfaceReseau;
    	ar & str;
    	ar & me_Type;
    	mcs_Nom = ATL::CString::fromStdString(str);
      }

Discussions similaires

  1. Réponses: 6
    Dernier message: 09/10/2009, 17h44
  2. comment serializer des données
    Par hidalg007 dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 04/01/2009, 00h43
  3. Réponses: 2
    Dernier message: 16/11/2008, 10h45
  4. serialize() et perte de données (poids maximal?)
    Par FrankOVD dans le forum Langage
    Réponses: 5
    Dernier message: 05/12/2006, 16h32
  5. Capture de données : pipe ?
    Par Michaël dans le forum POSIX
    Réponses: 4
    Dernier message: 11/11/2004, 12h27

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