Título: [Batch] Problema con el Quick Batch File Compiler Publicado por: najmuddin en 29 Junio 2008, 00:09 am Saludos.
Descargué el Quick Batch File Compiler V 3.1.6.0, le apliqué el parche y me di a la tarea de pasar a .exe uno de los Bats que había hecho... El .bat funciona perfecto, pero el .exe no... a continuación les dejo el Código Fuente... Código: @echo off nota: Bueno, da muchas vueltas innecesarias, pero fueron hechas con la intención de ver si funcionaban para otros casos... Cuando lo ejecuto como Bat funciona perfecto, pero cuando lo ejecuto como exe, al insertar el primer valor (el número) aparece lo siguiente... Número no válido . Las constantes numéricas son decimales(17), hexadecimales(0x11) u octales (021) pero continúa con la ejecución del programa (aunque ya no funciona)... ¿Qué es lo que pasa si en el BAT original corre perfecto? Muchas Gracias Título: Re: [Batch] Problema con el Quick Batch File Compiler Publicado por: carlitos.dll en 29 Junio 2008, 00:27 am Ese error que mencionas sucede cuando con set /a asignas un valor que comienza con 0 (que indica que es octal) seguido de un número 8 o 9 (el sistema octal abarca los números de 0 a 7)
es decir si haces esto: set /a numero=08 te arrojará ese error que mencionas. por cierto interesante ese comando: mode con Título: Re: [Batch] Problema con el Quick Batch File Compiler Publicado por: najmuddin en 29 Junio 2008, 05:33 am Gracias, Carlitosdll, pero entonces cómo hago para evitar ese error, ¿no hay una manera de declararlo como decimal?...
Y lo de Mode Con funciona con lines y con cols... Mode con cols=x Mode con lines=x Título: Re: [Batch] Problema con el Quick Batch File Compiler Publicado por: carlitos.dll en 29 Junio 2008, 06:52 am definitivamente es problema del compilador, lo probé con la versión que usaste y sucede lo que mencionas. Lo compilé con la versión 2.1.7 y ningún problema.
me tomé la libertad de modificar un poco tu código, para darte otra idea de cómo escribirlo, (como opinabas que daba muchas vueltas :D). Código: @echo off Título: Re: [Batch] Problema con el Quick Batch File Compiler Publicado por: najmuddin en 29 Junio 2008, 07:28 am Muchas Gracias, Carlitosdll, lo de las vueltas era sólo porque quise ver qué era exactamente lo que ocurría (por ejemplo nunca había utilizado el for de esa manera), pero ya que lo modificaste, mucho mejor, aunque me dejaste con varias dudas...
;D 1- ¿Por qué con Cols=54 como comentario? 2- if %priminutos:~0,1%==0 (goto start) --> No lo comprendí muy bien, jeje. 3- set /a priminutos=%priminutos% --> Tampoco lo comprendí bien... ¿Por qué queda en 0 si ocurre un error? 4- setlocal enableextensions No conocía setlocal e ignoro qué son las extensiones... No sabes lo ignorante que me sentí viendo todo esto... >:( :rolleyes: Título: Re: [Batch] Problema con el Quick Batch File Compiler Publicado por: carlitos.dll en 29 Junio 2008, 07:56 am 1-lo de cols comentado es solo por gustos, perdona :D.
2-selecciono desde la letra indice 0 hasta n - 1, es decir al colocar (0,1) selecciono desde el indice 0 hasta el indice 1 - 1 es decir de 0 a 0, esto es la primera letra solamente. Entonces, si la variable comienza con 0, (para evitar que sea octal, vamos al comienzo (start) 3-Yo me equivoqué. si en el set /a asignas una letra queda en 0. Pero si ocurre un error, la asignación no ocurre, ahora si la variable existía queda como estaba. 4-si colocas la ayuda de if (if/?) te dirá que: si los comandos de extensión están habilitados, if cambia así: (... GTR, LEQ) y con setlocal enableextensions habilitas esto. Puedes leer el post de programación avanzada en batch, y te aseguro que todo te quedará más claro. BONUS: te regalo un programa que te muestra los contenidos que van tomando las variables en tiempo de ejecución de los bat, se llama PowerCmd. Código: http://wikisend.com/download/219636/PowerCmd.rar Título: Re: [Batch] Problema con el Quick Batch File Compiler Publicado por: najmuddin en 29 Junio 2008, 08:39 am Muchas Gracias de Nuevo... Creo que no Hay vez que entre a este Foro y salga sin haber aprendido al menos una sola cosa nueva...
;D |