Título: Batch multi-idiomas Publicado por: z3nth10n en 24 Mayo 2012, 17:42 pm Hola amigos, hay alguna forma de hacer un batch multi-idiomas, es decir yo tengo un batch. Y desde varios archivos de configuracion tengo los idiomas, hay alguna forma? o algo alternativo?
Gracias y un saludo. Si no hay ninguna forma da igual, tengo otra que es un poco chapucera pero bueno. Título: Re: Batch multi-idiomas Publicado por: Eleкtro en 24 Mayo 2012, 18:25 pm Método 1:
Spanish.ini Código: 1=Bienvenido a mi programa English.ini Código: 1=Welcome to my program test.bat Código Método 2: Código
Los dos codes dan el mismo resultado: (http://img221.imageshack.us/img221/3095/prtscrcaptureow.jpg) Saludos! Título: Re: Batch multi-idiomas Publicado por: z3nth10n en 24 Mayo 2012, 19:08 pm Wow! Gracias, me voy a tirar un siglo entero para adaptarlo a mi code pero bueno... XD :¬¬ :xD
Edito: Y si lo quiero hacer con if? que es como yo se... es decir... tengo: Código: :LANG Como lo deberia hacer?, que deberia poner en SPA y ENG??? Título: Re: Batch multi-idiomas Publicado por: Eleкtro en 24 Mayo 2012, 19:35 pm Edito: Y si lo quiero hacer con if? que es como yo se... es decir... tengo: Código: if "%lang%"=="0" goto:ENG Pues si lo quieres hacer así, Deberías duplicar el código dentro del propio bat... Código
PD: Bueno no es necesario duplicarlo todo... a las funciones importantes donde no haya texto que mostrar (En ningun idioma) las puedes llamar usando CALL... Título: Re: Batch multi-idiomas Publicado por: z3nth10n en 24 Mayo 2012, 21:09 pm Pues si lo quieres hacer así, Deberías duplicar el código dentro del propio bat... Código
PD: Bueno no es necesario duplicarlo todo... a las funciones importantes donde no haya texto que mostrar (En ningun idioma) las puedes llamar usando CALL... Voy a hacerte como iria, a ver si va bien: Tengo los Inis: esp.ini, eng.ini; por ejemplo Luego, Yo tengo un bat, me pide el idioma, ok. Cuando lo selecciona pongo por ejemplo: Código Luego: Código Todo esto al principio del Batch, claro... Que como lo ves? por cierto, eso de |MORE, que hace... Un saludo. Título: Re: Batch multi-idiomas Publicado por: Eleкtro en 24 Mayo 2012, 21:20 pm Código No entiendo la intención de escribir "esp" o "eng" en un archivo de texto, Y luego usar un for para setear el lenguaje según lo que haya escrito ene l texto... Si puedes hacer esto como te puse en mis ejemplos: Código Citar C:\> more /? Muestra la información pantalla a pantalla. MORE [/E [/C] [/P] [/S] [/Tn] [+n]] < [unidad:][ruta]archivo comando | MORE [/E [/C] [/P] [/S] [/Tn] [+n]] MORE /E [/C] [/P] [/S] [/Tn] [+n] [archivos] En este caso lo uso para ahorrar lineas y no tener que escribir "Echo+" para insertar una linea en blanco. Saludos. Título: Re: Batch multi-idiomas Publicado por: z3nth10n en 25 Mayo 2012, 08:25 am Es para guardar la configuración.
Título: Re: Batch multi-idiomas Publicado por: Eleкtro en 25 Mayo 2012, 08:36 am Es para guardar la configuración. ahmmm vale vale, pero entonces esto dejalo asi: Código O mejor aún, Guarda la configuración en el propio bat (Al final del archivo) Código saludos Título: Re: Batch multi-idiomas Publicado por: z3nth10n en 25 Mayo 2012, 15:24 pm Eh, así me ahorro muchos txt inservibles... una cosita. Y si quiero borrar la configuracion es decir, (esto lo voy a utilizar para otras cosas), como borro el idioma seteado que esta guardado.
Y otra cosita, tengo un archivo de configuracion de color, y siempre a los usuarios le pregunto, te gustan los cambios? en poner "Te gustan los cambios (S/N)", no hay problema, pero en ingles, el (S/N), se convierte en (Y/N), de Yes y No. En el if, lo tengo puesto así. If "%tal%"=="s" goto:TAL, como lo puedo adaptar esa s, a una y, del ingles?? Título: Re: Batch multi-idiomas Publicado por: Eleкtro en 25 Mayo 2012, 15:40 pm Eh, así me ahorro muchos txt inservibles... una cosita. Y si quiero borrar la configuracion es decir, (esto lo voy a utilizar para otras cosas), como borro el idioma seteado que esta guardado. Código
Y otra cosita, tengo un archivo de configuracion de color, y siempre a los usuarios le pregunto, te gustan los cambios? en poner "Te gustan los cambios (S/N)", no hay problema, pero en ingles, el (S/N), se convierte en (Y/N), de Yes y No. En el if, lo tengo puesto así. If "%tal%"=="s" goto:TAL, como lo puedo adaptar esa s, a una y, del ingles?? Código
EDITO: O... Código Título: Re: Batch multi-idiomas Publicado por: z3nth10n en 25 Mayo 2012, 17:33 pm Otra cosita, los EQU, no se le pueden poner valores de caracteres? es decir en vez de un 0 o un 1, o un 2, una s, una n, o una b :huh:
Una cosa cuando se copie el nuevo bat que nombre va atomar, el del antiguo o el de: n0_new.bat?? JEJE, parece como si te estuviera poniendo a prueba Título: Re: Batch multi-idiomas Publicado por: Eleкtro en 25 Mayo 2012, 17:54 pm Otra cosita, los EQU, no se le pueden poner valores de caracteres? es decir en vez de un 0 o un 1, o un 2, una s, una n, o una b :huh: Si, se puede, Pero los códigos de error son números, Asi que en "%Errorlevel% EQU *" debe ser un número correspondiente al código de error...http://ss64.com/nt/if.html Una cosa cuando se copie el nuevo bat que nombre va atomar, el del antiguo o el de: n0_new.bat?? Si el bat se llama "archivo.bat", La nueva copia se llamará "archivo_new.bat" (Y el antiguo bat se elimina)PD: Puedes usar el comando "REN" "RENAME" para cambiarle el nombre a la copia, a tu gusto... JEJE, parece como si te estuviera poniendo a prueba Son preguntas fáciles xD, Pero deberias leer un manual...Saludos Título: Re: Batch multi-idiomas Publicado por: z3nth10n en 25 Mayo 2012, 18:16 pm http://ss64.com/nt/if.html Si el bat se llama "archivo.bat", La nueva copia se llamará "archivo_new.bat" (Y el antiguo bat se elimina) Saludos Y directamente, no se puede poner una nombre? como por ejemplo... en vez de %~n0_New.bat, esto %~n0.bat... :) Título: Re: Batch multi-idiomas Publicado por: Eleкtro en 25 Mayo 2012, 18:25 pm Si pones esto %~n0.bat sobreescribirás el bat original, Y quedará un archivo en blanco.
Salu2 Título: Re: Batch multi-idiomas Publicado por: z3nth10n en 25 Mayo 2012, 18:44 pm pero el antiguo bat se elimina automatica mente o hay que poner un "del"
Título: Re: Batch multi-idiomas Publicado por: Eleкtro en 25 Mayo 2012, 18:59 pm pero el antiguo bat se elimina automatica mente o hay que poner un "del" Código Hay que eliminarlo con DEL, Si sobreescribes el mismoa rchivo queda en blanco, vacio. saludos Título: Re: Batch multi-idiomas Publicado por: z3nth10n en 26 Mayo 2012, 12:57 pm Ya he estado probando el código, pero... Tarda un puñado en cargar.... Puede hacer algo para acelerar, es que tengo 76 variables para cargar al principio.... :laugh:
Aparte, no se carga bien... Le pongo una variable nada mas, y se carga otro texto... Confirmado, si pongo %txt1%, a lo mejor se carga el numero 10... :( Como puedes observar aquí: (http://i.imgur.com/fYg0U.png) Título: Re: Batch multi-idiomas Publicado por: z3nth10n en 26 Mayo 2012, 23:58 pm Vale, ya lo he corregido, en vez de poner: 1,2,3,4,5,6,7,8,9; he puesto, 1b,2b,3b,4b,5b,6b,7b,8b,9b... ;D
Título: Re: Batch multi-idiomas Publicado por: z3nth10n en 27 Mayo 2012, 12:08 pm Grandes problemas. Primero algunas variables no se cargan ponen echo est desactivado. :¬¬ y luego. Tarda mucho en cargar... (Siempre carga las variables...) :¬¬ :-[
Edito, he corregido el error de que siempre carga las variables, ahora necesito que me deigais porque me sale echo est desactivado... :o Edito, ya he conseguido arreglar los errores, perdon por el spam XD ::) |