Título: [BATCH] Buscar y ejecutar el archivo encontrado .bat Publicado por: rockhevy1000 en 19 Octubre 2015, 01:07 am Buenas tardes amigos del foro, anteriormente me han servido muchos tutoriales de esta pagina y realmente no soy un usuario de andar molestando preguntando sin antes buscar primero, es por eso que este es mi primer tema. Les comento mi situación.
Tengo un juego (Unreal Tournament 3) que gracias a los tutos de la red lo puedo ejecutar en modo de pantalla split para 2 o + jugadores. El problema viene que para cambiar los modos de juego (1 juagador o 2+ jugadores) hay que cambiar un archivo en la carpeta del juego. Es decir, si quiero jugar yo solo tengo que copiar el archivo "ejem1.ini" en la carpeta del juego, renombrarlo a "ejem.ini" y después ejecutar el juego. Si quiero jugarlo con un amigo, tengo borrar el primero, después copiar el "ejem2.ini" a la carpeta y renombrarlo por "ejem.ini". Despues de todo esto, ahoar si puedo ejecutar el juego. La primera parte ya la resolvi con el siguiente codigo. 1 jugador: Código
2+ jugadores: Código
Ahora la pregunta es si puedo automatizar el proceso para que despues de cambiar el archivo ejecute el juego (ut3.exe) Se que con el comando start lo puedo hacer poniendolo asi: Código
Pero la pregunta es si hay alguna forma de que el batch me busque en el equipo el programa, en este caso ut3.exe y que cuando lo encuentre, lo ejecute. Esto es por si despues cambio la carpeta de instalación o le paso el batch a un amigo y no tenga que estar cambiando las rutas el mismo. Resumiendo, que al ejecutar el archivo 1 player.bat copie el archivo 1player.ini en la carpeta de configuracion, y despues, busque el ejecutable (en el equipo) y lo ejecute. Y al ejecutar el archivo 2 player.bat, copie 2player.ini, busque el ejecutable y lo ejecute. Espero haberme explicado bien. Gracias por sus respuestas. *Los codigos que puse son ejemplos, me gusta trabajar en carpetas separadas a lo que voy a hacer para no confundirme. Una vez que logre lo que quiero, cambio los archivos por su respectivo. Título: Re: [BATCH] Buscar y ejecutar el archivo encontrado .bat Publicado por: Eleкtro en 21 Octubre 2015, 16:17 pm Asumiendo que solo haya un archivo con nombre "ut3.exe" en el PC y sea en el disco principal, puedes hacer esto con seguridad:
Código Pero ten en cuenta que Batch es un lenguaje limitado, es lento incluso para realizar operaciones de búsqueda de archivos o iteraciones en el sistema de archivos. PD: ¿Todavía existen servers públicos para el UT3? xD. Saludos Título: Re: [BATCH] Buscar y ejecutar el archivo encontrado .bat Publicado por: rockhevy1000 en 23 Octubre 2015, 06:49 am Asumiendo que solo haya un archivo con nombre "ut3.exe" en el PC y sea en el disco principal, puedes hacer esto con seguridad: Código Pero ten en cuenta que Batch es un lenguaje limitado, es lento incluso para realizar operaciones de búsqueda de archivos o iteraciones en el sistema de archivos. PD: ¿Todavía existen servers públicos para el UT3? xD. Saludos Saludos! y gracias por responder... Voy a probar tu batch para ver como se me da, igual en el remoto caso de que tenga dos o mas archivos llamados "ut3.exe" es posible especificar en que carpeta (no se, por ejemplo %ProgramFiles(x86)%? en vez de "%HomeDrive%"? Realmente no se si existan servers publicos, como lo utilizo para jugar por Hamachi o por plantalla split, no me he dado a la tarea de buscarlos. En todo caso, jugarlo con los amigos es por nostalgia, la crisis de los 30... :P EDITO: Ya hice el bat pero no me funciono, te dejo la captura de pantalla... (http://k46.kn3.net/3/A/0/D/5/1/BB8.png) No pasa de ahi... :silbar: Título: Re: [BATCH] Buscar y ejecutar el archivo encontrado .bat Publicado por: Eleкtro en 23 Octubre 2015, 09:55 am EDITO: Ya hice el bat pero no me funciono, te dejo la captura de pantalla... El código lo escribí al vuelo sin testearlo, lo siento, me faltó añadir el backslash a la ruta: Código: PUSHD "%HomeDrive%\" Con esa modificación ya funciona. en el remoto caso de que tenga dos o mas archivos llamados "ut3.exe" es posible especificar en que carpeta (no se, por ejemplo %ProgramFiles(x86)%? en vez de "%HomeDrive%"? Si, simplemente modifica esa ruta. El comando PUSHD lo que hace es modificar el directorio de trabajo, y entonces el For se procesa en el directorio de trabajo actual (que hemos modificado previamente) para buscar el archivo de forma recursiva dentro de ese directorio. Código Saludos Título: Re: [BATCH] Buscar y ejecutar el archivo encontrado .bat Publicado por: rockhevy1000 en 24 Octubre 2015, 21:46 pm Gracias man! Ya quedo el código, justo como lo buscaba. Solo una pregunta, el hecho de que pongas If Exist "%ProgramFiles(x86)%" Else "%ProgramFiles%" es para que busque en Archivos de Programa (x86) si está en el equipo, si no, en Archivos de Programa, verdad? Al fin quedo así: Código
Mas que nada paja, pero el resultado me gusto. Saludos! (http://k46.kn3.net/F/7/D/C/6/3/83A.png) Título: Re: [BATCH] Buscar y ejecutar el archivo encontrado .bat Publicado por: Eleкtro en 25 Octubre 2015, 07:11 am Solo una pregunta, el hecho de que pongas If Exist "%ProgramFiles(x86)%" Else "%ProgramFiles%" es para que busque en Archivos de Programa (x86) si está en el equipo, si no, en Archivos de Programa, verdad? Exacto. Por lo que dijiste de que le podías pasar el script a otras personas, en el caso de que alguna persona no tenga un S.O. de 64 Bits. Al fin quedo así: Genial, pero deberías intentar no repetir código: Código
Saludos |