Pasar de Char a LPCWSTR

20/09/2004 - 04:10 por Warren Sanchez | Informe spam
hola a la comunidad

Soy novato en VC++ y estoy habituado a utilizar estandares de C o C++.
En mi caso necesito transformar una cadena "char[n]" o "char *" en un tipo
de dato LPCWSTR.

Explicaré mejor lo que quiero hacer:
Estoy realizando un programilla que utilize DShow para reproducir archivos
multimedia.
Para ello utlizo el metodo IGraph::RenderFile cuyo primer parametro es una
cadena de tipo LPCWSTR y que corresponde al nombre del fichero a reproducir.
En los ejemplos q he visto por ahi se utiliza normalmente un literal
entrecomillado:

RenderFile(L"C:\\Example.avi",

(por cierto tampoco entiendo para q se pone esa 'L' antes del literal)

Bueno, pues que en vez de tener q usar un valor estatico quisiera pasarle
una variable de ese tipo para conseguir por ejemplo y alludado del sprintf:

sprintf(buff, "c:\\ejem%d.avi", n);
//"c:\\ejem1.avi" "c:\\ejem2.avi"

Pero falla la correspondencia de tipos al pasarle un char.
Por ello si alguien conoce algun metodo para transformar de un tipo a otro
le agradeceria q me ayudase.

Bueno, espero haber explicado bien mi problema,
gracias por adelantado
y un saludo

Preguntas similare

Leer las respuestas

#1 Sergio
20/09/2004 - 08:19 | Informe spam
Warren Sanchez wrote:
hola a la comunidad

Soy novato en VC++ y estoy habituado a utilizar estandares de C o C++.
En mi caso necesito transformar una cadena "char[n]" o "char *" en un tipo
de dato LPCWSTR.

Explicaré mejor lo que quiero hacer:
Estoy realizando un programilla que utilize DShow para reproducir archivos
multimedia.
Para ello utlizo el metodo IGraph::RenderFile cuyo primer parametro es una
cadena de tipo LPCWSTR y que corresponde al nombre del fichero a reproducir.
En los ejemplos q he visto por ahi se utiliza normalmente un literal
entrecomillado:

RenderFile(L"C:\\Example.avi",

(por cierto tampoco entiendo para q se pone esa 'L' antes del literal)

Bueno, pues que en vez de tener q usar un valor estatico quisiera pasarle
una variable de ese tipo para conseguir por ejemplo y alludado del sprintf:

sprintf(buff, "c:\\ejem%d.avi", n);
//"c:\\ejem1.avi" "c:\\ejem2.avi"

Pero falla la correspondencia de tipos al pasarle un char.
Por ello si alguien conoce algun metodo para transformar de un tipo a otro
le agradeceria q me ayudase.

Bueno, espero haber explicado bien mi problema,
gracias por adelantado
y un saludo






prueba con esto:
LPCSTR str = buff; //char *buff

pGB->RenderFile(CA2W(str),NULL); // IGraphBuilder *pGB


A mi me funciona :)
Respuesta Responder a este mensaje
#2 Warren Sanchez
20/09/2004 - 13:58 | Informe spam
hola Sergio

Gracias por contestar,
Queria saber si has utilizado alguna vez DShow con Dev-Cpp. Es que a mi me
da siempre que incluyo el fichero "dshow.h" errores muy extraños de
compilacion en las propias librerias d DShow. Y entonces tengo q usar a
narices el VStudio para proyectos de ese tipo.

Bueno, pues gracias de nuevo y un saludo
Respuesta Responder a este mensaje
#3 Sergio
20/09/2004 - 16:13 | Informe spam
Warren Sanchez wrote:
hola Sergio

Gracias por contestar,
Queria saber si has utilizado alguna vez DShow con Dev-Cpp. Es que a mi me
da siempre que incluyo el fichero "dshow.h" errores muy extraños de
compilacion en las propias librerias d DShow. Y entonces tengo q usar a
narices el VStudio para proyectos de ese tipo.

Bueno, pues gracias de nuevo y un saludo





Pues no, siempre he usado el VS.
Respuesta Responder a este mensaje
#4 Pablo Fernandez
20/09/2004 - 16:43 | Informe spam
Hola Warren, no te puedo ayudar (de hecho esa duda la he tenido yo tb alguna
vez), solamente te queria decir que me mola tu nombre, incluso estuvo a
punto de ser el nombre de mi grupo de musica.

Saludos.

¡Quiero paz!
Si te unes a nosotros
todos juntos haremos la paz

¡Quiero el bien!
Si te unes a nosotros
todos juntos haremos el bien.

¡Quiero amor!
Si te unes a nosotros
todos juntos haremos el amor.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida