Programación General => C/C++ => Mensaje iniciado por: Zuzunaga en Sábado 2 de Diciembre de 2006, 14:58
Título: Ejecutable Que Se Copie Asi Mismo
Publicado por: Zuzunaga en Sábado 2 de Diciembre de 2006, 14:58
¿Como hago para hacer que un ejecutable se copie asi mismo sin importar que le cambies el nombre,porq para para el manejo de archivos en C ,requiere un nombre fijo!!!RAYOS!!! y es un problrma cuando le cambias el nombre al ejecutable.? :angry:
Título: Re: Ejecutable Que Se Copie Asi Mismo
Publicado por: Geo en Sábado 2 de Diciembre de 2006, 15:57
El nombre del ejecutable lo puedes obtener de la línea de comandos:
Código: Text
int main( int argc, char* argv[] ) {
for ( int i = 0; i < argc; i++ ) {
cout << argv[ i ] << endl;
}
return 0;
}
En argv[ 0 ] siempre tienes la ruta completa del ejecutable, si sólo quieres el nombre del ejecutable recorrerías hacia atrás hasta encontrar el primer indicador de directorio/carpeta (\ en Windows, / en otros como Linux/Unix).
Si trabajas en Windows, la función GetCommandLine te devuelve la línea de comandos y de allí podrías extraer el nombre del ejecutable, aunque creo que debe existir una función en la API de Windows que ya haga lo que quieres :).
Saludos, JJ (Geo).
Título: Re: Ejecutable Que Se Copie Asi Mismo
Publicado por: Eternal Idol en Sábado 2 de Diciembre de 2006, 17:52
Si es para consola en Windows con argc y argv va perfecto, de otra manera junto a GetCommandLine, como bien dice Geo, podes usar CommandLineToArgvW para conseguir argc y argv (en Unicode):