Bonjour,
voilà, tout est dans le titre,
je voudrais affecter une variable TCHAR[] à partir d'un LPWSTR
et je ne trouve pas comment faire:(...
Vous pourriez m'aider, please...
merci
Version imprimable
Bonjour,
voilà, tout est dans le titre,
je voudrais affecter une variable TCHAR[] à partir d'un LPWSTR
et je ne trouve pas comment faire:(...
Vous pourriez m'aider, please...
merci
wcscpy ?
Si tu compiles en UNICODE, TCHAR==wchar_t et LPWSTR == wchar_t*.
Si tu ne compiles pas en UNICODE, TCHAR==char et LPWSTR == wchar_t* : F.A.Q. : Comment convertir une chaîne UNICODE en Char * ?
Ensuite, pour mettre tout ça dans un tableau, soit tu n'utilises plus les pointeurs/tableaux car cela semble te causer plus de problème qu'autre chose. A la place, prends des std::string/std::wstring ou des CString/CStringW/CStringA.
Soit tu repasses à la main avec des strncat et/ou autre memcpy qui relèvent plus du C.
Bon finalement,
j'ai fait ça :
ça marche :DCode:
1
2
3
4
5 TCHAR chTchar[nbChar]; LPWSTR chLpwstr; //... StringCbCopy( chTchar, nbChar, W2A(chLpwstr));
c'est clair que j'm'embrouille pas mal avec tous ces formats de chaînes :aie:
mais j'suis obligée d'en passer par là, pour cause d'interface avec une librairie C :?
Merci à vous
Utilise W2T au lieu de W2A (ou mieux, CW2T si disponible).
Aussi, vu que tu n'utilises pas sizeof, utilise StringCchCopy() au lieu de StringCbCopy(), vu que tu lui passes un nombre de TCHAR en paramètre.