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 :

Convertion System String en string normal


Sujet :

C++/CLI

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 104
    Points : 54
    Points
    54
    Par défaut Convertion System String en string normal
    Bonjour,

    J'utilise Visual C++ 2005 en windows form et j'aimerai convertir des données de type Systeme String (utilisé dans les textbox par exemple) en string normal afin de pouvoir utiliser ce qui a été entré dans mes classes.
    Sur le site de microsoft ils parlent d'une fonction pour faire la convertion:

    #include <string>
    #include <iostream>
    using namespace std;
    using namespace System;

    void MarshalString ( String ^ s, string& os ) {
    using namespace Runtime::InteropServices;
    const char* chars =
    (const char*)(Marshal::StringToHGlobalAnsi(s)).ToPointer();
    os = chars;
    Marshal::FreeHGlobal(IntPtr((void*)chars));
    }

    Lorsque je l'inclu a mon projet, aucun probleme, mais lorsque j'appelle la fonction dans mon code =>

    MarshalString(this->txtnom->Text->ToString(), nom);

    J'ai une erreur comme ceci a la compilation:

    stdafx.obj : error LNK2005: "void __clrcall MarshalString(class System::String ^,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &)" (?MarshalString@@$$FYMXP$AAVString@System@@AAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) déjà défini(e) dans projet_vtt.obj
    Form_enreg.obj : error LNK2005: "void __clrcall MarshalString(class System::String ^,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &)" (?MarshalString@@$$FYMXP$AAVString@System@@AAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) déjà défini(e) dans projet_vtt.obj


    Je ne comprend absolument pas ce que ca veut dire (faut dire que c'est pas très clair!)

    Est-ce que quelqu'un pourrait m'aiguiller un peu?

    Merci

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 379
    Points : 41 573
    Points
    41 573
    Par défaut
    Les mêmes messages avec le bruit réduit:
    stdafx.obj : error LNK2005: "void __clrcall MarshalString(class System::String ^,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &)" (?MarshalString@@$$FYMXP$AAVString@System@@AAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) déjà défini(e) dans projet_vtt.obj
    Form_enreg.obj : error LNK2005: "void __clrcall MarshalString(class System::String ^,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &)" (?MarshalString@@$$FYMXP$AAVString@System@@AAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) déjà défini(e) dans projet_vtt.obj

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 11/04/2015, 15h56
  2. convertion de void en string
    Par msahmi dans le forum ASP.NET
    Réponses: 11
    Dernier message: 18/02/2008, 16h31
  3. from System.Byte[] to string
    Par benkunz dans le forum C#
    Réponses: 3
    Dernier message: 26/04/2007, 16h47
  4. Réponses: 9
    Dernier message: 31/05/2006, 17h11
  5. Réponses: 12
    Dernier message: 31/01/2006, 21h46

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