Pregunta

Por favor, ¿podría alguien explicar por qué esto no funciona?

char *test = "test";
_TCHAR *szTest = CA2W(test);

Y, por favor, dime qué debo hacer en su lugar.

En lugar de darme el mismo texto, me está dando:

﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾﻾
¿Fue útil?

Solución

Según MSDN, eso es malo. Así que he usado esto en su lugar:

char *test = "test";
CA2W szTest(test);

Desde aquí, podemos obtener un tipo LPWSTR si realmente queremos:

LPWSTR test = szTest.m_psz;

También parece mejor usar LPWSTR en lugar de _TCHAR *, pero no estoy seguro (creo que son esencialmente lo mismo, pero podría estar mal).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top