elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Bat que no funciona al compilarlo
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Bat que no funciona al compilarlo  (Leído 3,332 veces)
carlosguay

Desconectado Desconectado

Mensajes: 42


Ver Perfil
Bat que no funciona al compilarlo
« en: 28 Noviembre 2009, 11:13 am »

Hola de nuevo, otra preguntita.

Vereis hace unos dias me baje de aqui un codigo de una maquina de escribir, este.


Código:
@echo off
echo.
echo.
echo.
echo.
echo.
call:tpwrtr AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
call:sleep 2
echo.
echo.
call:tpwrtr BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
call:sleep 2
echo.
echo.
call:tpwrtr CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
call:sleep 2
echo.
echo.
call:tpwrtr DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
call:sleep 2
pause>nul
goto:eof
:tpwrtr
set palabra=%*
if not defined palabra (goto:eof)
set palabra=%palabra: =_%
call:length %palabra%
set /a contt=0
:loopt
call :tpwrtr1 %%palabra:~%contt%,1%%
set /a contt +=1
if %contt% leq %tam% (goto:loopt)
goto:eof
:tpwrtr1
set char=%1
if [%char%]==[_] (set char= )
<nul (set /p msg=%char%)
ping -n 1 127.0.0.0 -w 1>nul 2>&1
goto:eof
:length
set argl=%*
if not defined argl (goto :eof)
set wordl=%argl%
set /a contl=0
:loopl
if not defined wordl (goto endl)
set wordl=%wordl:~1%
set /a contl +=1
goto loopl
:endl
set tam=%contl%
goto :eof
:sleep
if "%1"=="" (goto :eof)
set /a limit=0
set /a limit=%1
if %limit% LEQ 0 (goto :eof)
set /a cont=0
:time
set mirror1=%time:~-4,1%
:increment
set mirror2=%time:~-4,1%
if not %mirror2%==%mirror1% (goto count)
goto increment
:count
set /a cont +=1
if "%cont%"=="%limit%" (goto :eof)
goto time
goto :eof

El autor me tiene que perdonar, pero no recuerdo su nombre.

Estoy haciendo un bat, que hace varias cosas y habia pensado que para ponerlo mas bonito y mas parecido a un programa, pues entre comando y comando ir poniendo comentarios de lo que estaba haciendo en cada momento.

El resultado es que funciona perfectamente, pero al compilarlo ya no funcina, ni el bat ni el codigo que os pongo mas arriba, osea realiza todo lo demas pero la parte de la escritura, no hace nada de nada.

En fin, pues esa era la pregunta, que si veis algo raro en el codigo o si saveis porque sucede eso, ya que me interesaria compilar mi bat y ponerlo lo mas bonito posible.

Gracias y un saludo


En línea

.;.


Desconectado Desconectado

Mensajes: 354


Ver Perfil
Re: Bat que no funciona al compilarlo
« Respuesta #1 en: 28 Noviembre 2009, 11:40 am »

¿No entiendo lo de "realiza todo lo demás pero la parte de escritura no hace nada"?

¿Qué compilador usas?


En línea

carlosguay

Desconectado Desconectado

Mensajes: 42


Ver Perfil
Re: Bat que no funciona al compilarlo
« Respuesta #2 en: 28 Noviembre 2009, 13:38 pm »

¿No entiendo lo de "realiza todo lo demás pero la parte de escritura no hace nada"?

¿Qué compilador usas?


A ver, si me explico mejor.
La maquina de escribir que pongo mas arriba, funciona perfectamente en un bat, pero al compilarla ya no funciona.
Com el bat que tengo, me pasa exactamente igual, osea todos los comandos que lleva el bat, los realiza perfectamente una ves compilado, menos la parte de la escritura.

Por ejemplo, empiezo poniendo la IP en manual, y a continuacion mando una linea de escritura, explicando lo que esta haciendo, pues la IP se cambia, pero la linea de la escritura no la realiza, hace como si la estuviera escribiendo pero no escribe nada y a continuacion sigue com el siguiente comando.

El compilador funciona perfectamente, pues he compilado muchos bat y no tengo problemas, es este.

Citar
Untilled.bat-Quick Batch File Compiler

Espero haberme explicado mejor.

un saludo
En línea

Disembowelment

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Re: Bat que no funciona al compilarlo
« Respuesta #3 en: 28 Noviembre 2009, 20:42 pm »

El problema esta en que el Quick Batch File Compiler reemplaza los %* por %cmdln% en el bat compilado, por eso no funciona correctamente el bat al compilarlo y ejecutarlo.

Una solución es así:

Código
  1. @echo off
  2. set asterisco=*
  3. call:tpwrtr AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
  4. call:sleep 2
  5. call:tpwrtr BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
  6. call:sleep 2
  7. call:tpwrtr CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
  8. call:sleep 2
  9. call:tpwrtr DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  10. call:sleep 2
  11. pause>nul
  12. goto:eof
  13. :tpwrtr
  14. call set palabra=%%%asterisco%
  15. if not defined palabra (goto:eof)
  16. set palabra=%palabra: =_%
  17. call:length %palabra%
  18. set /a contt=0
  19. :loopt
  20. call :tpwrtr1 %%palabra:~%contt%,1%%
  21. set /a contt +=1
  22. if %contt% leq %tam% (goto:loopt)
  23. goto:eof
  24. :tpwrtr1
  25. set char=%1
  26. if [%char%]==[_] (set char= )
  27. <nul (set /p msg=%char%)
  28. ping -n 1 127.0.0.0 -w 1>nul 2>&1
  29. goto:eof
  30. :length
  31. call set argl=%%%asterisco%
  32. if not defined argl (goto :eof)
  33. set wordl=%argl%
  34. set /a contl=0
  35. :loopl
  36. if not defined wordl (goto endl)
  37. set wordl=%wordl:~1%
  38. set /a contl +=1
  39. goto loopl
  40. :endl
  41. set tam=%contl%
  42. goto :eof
  43. :sleep
  44. if "%1"=="" (goto :eof)
  45. set /a limit=0
  46. set /a limit=%1
  47. if %limit% LEQ 0 (goto :eof)
  48. set /a cont=0
  49. :time
  50. set mirror1=%time:~-4,1%
  51. :increment
  52. set mirror2=%time:~-4,1%
  53. if not %mirror2%==%mirror1% (goto count)
  54. goto increment
  55. :count
  56. set /a cont +=1
  57. if "%cont%"=="%limit%" (goto :eof)
  58. goto time
  59. goto :eof
En línea

carlosguay

Desconectado Desconectado

Mensajes: 42


Ver Perfil
Re: Bat que no funciona al compilarlo
« Respuesta #4 en: 28 Noviembre 2009, 23:57 pm »

Gracias amigo, era ese el problema, me a funcinado perfecto.

Un saludo.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Phyton] Como compilarlo?
Python
Dacan 6 3,363 Último mensaje 26 Abril 2015, 02:37 am
por Dacan
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines