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 :

convertir 'char *' en 'LPCWSTR'


Sujet :

C++

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2010
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 84
    Par défaut convertir 'char *' en 'LPCWSTR'
    Bonjour,
    Comment convertir un 'char *' en 'LPCWSTR' ?
    Qu'est ce qu'exactement le LPCWSTR ?
    Merci d'avance.

  2. #2
    Expert confirmé
    Homme Profil pro
    Analyste/ Programmeur
    Inscrit en
    Juillet 2013
    Messages
    4 757
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Analyste/ Programmeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 4 757
    Par défaut
    Notation hongroise

    L -> long, le type (Édit: le L ne sert à rien. C'est juste pour dire que c'est 32 bits et non pas 16 bits)
    P -> pointeur
    C -> constant
    W -> Wide, donc UTF-16
    str -> string

    Donc c'est un const wchar_t*.

    Ensuite pour la conversion: ton char * contient quel type d'encodage? ASCII ? mbcs (par exemple latin-1) ? UTF-8 ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2010
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 84
    Par défaut
    Un grand merci pour ces explications.
    Mon char * est en ASCII.
    En fait, j'essaie d'implémenter la fonction CryptStringToBinaryA

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    char * test = (char*) (HPBoutResult -> authenticationCertificates -> array[0]);
    DWORD             Size = (DWORD)strlen(test);
    DWORD             Need = (DWORD)0;
    CryptStringToBinaryA(test, Size, CRYPT_STRING_BASE64_ANY, NULL, &Need, NULL, NULL);
    J'ai deux erreurs : LNK2028 et LNK2019

    Si j'utilise la fonction CryptStringToBinary (sans le A à la fin), j'ai une erreur : impossible de convertir le paramètre 1 de 'char *' en 'LPCWSTR'

    Merci !

  4. #4
    Membre Expert
    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
    Par défaut
    Citation Envoyé par betedesvosges Voir le message
    Si j'utilise la fonction CryptStringToBinary (sans le A à la fin), j'ai une erreur : impossible de convertir le paramètre 1 de 'char *' en 'LPCWSTR'
    Fonction sans suffixe => défini par la configuration du projet.
    CryptStringToBinaryA => LPCSTR (CHAR const*)
    CryptStringToBinaryW => LPCWSTR (WCHAR const*)

    Pour les erreurs de link c'est une fonction non implémentée ou une lib manquante.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2010
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 84
    Par défaut
    Citation Envoyé par Iradrille Voir le message
    Pour les erreurs de link c'est une fonction non implémentée ou une lib manquante.
    Dans le mille : Je n'avais pas ajouté Crypt32.lib
    Du coup, plus besoin de conversion char * en LPCWSTR avec CryptStringToBinaryA

    Un grand merci à tous !

Discussions similaires

  1. Convertir char * en LPCWSTR
    Par alex2746 dans le forum C++
    Réponses: 6
    Dernier message: 29/03/2012, 11h54
  2. Réponses: 2
    Dernier message: 18/05/2011, 10h57
  3. Comparer 2 Char / Convertir Char -> Int
    Par mbk-w dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 09/06/2006, 11h09
  4. [MFC] convertir LPCTSTR en LPCWSTR ?
    Par MrMaze dans le forum MFC
    Réponses: 4
    Dernier message: 18/04/2005, 18h15

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