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

MFC Discussion :

Conversion CString WCHAR


Sujet :

MFC

  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    1
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 1
    Par d�faut Conversion CString WCHAR
    bonjour,
    Je suis en train de d�velopper une application vocale que je voudrais int�grer dans une application faite avec les MFC.
    Je dois envoyer a mes m�thodes une cha�ne de caract�res de type WCHAR pour qu'elles fonctionnent.
    Je souhaite r�cup�rer une phrase via l'application mais celle ci me cr�e une CString.
    J'ai cherch� sur le net une fa�on de convertir cette CString en WCHAR mais je n'ai pas trouv�.

    Si quelqu'un connait un m�thode,
    Merci d'avance

  2. #2
    Membre �m�rite
    Avatar de Spout
    Profil pro
    Ing�nieur syst�mes et r�seaux
    Inscrit en
    F�vrier 2007
    Messages
    904
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : France, Val d'Oise (�le de France)

    Informations professionnelles :
    Activit� : Ing�nieur syst�mes et r�seaux

    Informations forums :
    Inscription : F�vrier 2007
    Messages : 904
    Par d�faut
    WCHAR est un caract�re 16 bits unicode alors que le CString est une classe MFC qui correspond � une cha�ne de caract�res compl�te.
    Donc le CString que tu r�cup�res doit �tre envoy� soit dans un tableau de WCHAR, soit dans un WCHAR*.

    De plus, il faut savoir si tu es en UNICODE ou en ANSI. Le principe, c'est de faire une copie du buffer correspondant au CString dans l'espace m�moire de ta cha�ne en WCHAR. Seulement, il faut savoir dans quel cas tu te situes, car l'unicode te donne des caract�res en 16bits alors que l'ansi t'en donne en 8bits...
    Tiens-moi au courant!

  3. #3
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Avec une version r�cente de MFC, tu peux utiliser une CStringW qui est toujours constitu�e de WCHARs.
    Et l�, tu pourras librement utiliser l'op�rateur de conversion en LPCWSTR (const WCHAR *) ou si n�cessaire, la fonction membre GetBuffer() qui t'offre un LPWSTR (WCHAR *)...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

Discussions similaires

  1. Conversion CString -> wstring
    Par loupdeau dans le forum MFC
    R�ponses: 5
    Dernier message: 08/11/2008, 22h15
  2. Conversion CString en const char*
    Par LRobi dans le forum MFC
    R�ponses: 8
    Dernier message: 19/07/2005, 12h12
  3. Conversion CString -> CTime/Systemtime
    Par Manson dans le forum MFC
    R�ponses: 2
    Dernier message: 22/06/2005, 11h27
  4. conversion CString --> LPCWSTR
    Par lyim dans le forum MFC
    R�ponses: 8
    Dernier message: 19/05/2005, 12h44
  5. conversion CString
    Par latisane dans le forum MFC
    R�ponses: 1
    Dernier message: 19/05/2005, 09h51

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