Problema al copiar archivos

Iniciado por gxg, 31 Marzo 2011, 23:00 PM

0 Miembros y 1 Visitante están viendo este tema.

gxg

Al hacer esto me da error porque la ruta del archivo tiene carpetas  con espacios como menu inicio o por las tildes.



System("copy c:\WINDOWS\system32\prueba.exe c:\Documents and Settings\Administrador\Menú Inicio\Programas\Inicio\prueba.exe");


He intentado buscar una funcion de C que haga lo mismo que este comando de windows pero nada...
---------------------

Tambien aprovecho para preguntar como se concatenan strings en c

lo que quiero hacer de concatenar strings en java seria asi:

System.out.print(s1+"hola"+s2+"que tal");



No me vale que me digais que en c se hace asi

Prinft("s&",s1);
Prinft("s&","hola");
....



satu

Hola

Prueba a poner \\ donde tienes \ . En C/C++ el carácter \ es especial, es un carácter de escape y sirve para poner otros caracteres especiales como " (que se escribe \" ), ' (que se escribe \' ), \n (salto de línea), \t (tabulador), etc, el carácter \ se escribe \\

En cuanto a la segunda pregunta, busca en google sobre la función sprintf, no se si habrá otras formas.

Saludos
Breakbeat como forma de vida

gxg

Ok, gracias por responder, pero lo que yo necesito es hacer esto.

Supongamos que la funcion f() dice el usuario actual.

System("copy c:\\WINDOWS\\system32\\prueba.exe c:\\Documents and Settings\\" +f() +
"\\Menú Inicio\\Programas\\Inicio\\prueba.exe");


satu

Hola

Para sacar la carpeta del usuario actual y otras carpetas importantes del sistema puedes usar la función getenv, busca en google sobre ella y sobre variables de entorno

Saludos
Breakbeat como forma de vida