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

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Leer tecla en batch?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Leer tecla en batch?  (Leído 9,595 veces)
Sunny_Sayantan

Desconectado Desconectado

Mensajes: 13


Ver Perfil
Leer tecla en batch?
« en: 29 Septiembre 2009, 07:19 am »

Me podrian decir como batch puede captar la tecla presionada?  tengo un programa que envia mensajes y me gustaria programar un pequeño menu con ayuda de un if en donde if %help% == 2 (goto menu2).


En línea

Ari Slash


Desconectado Desconectado

Mensajes: 1.783



Ver Perfil WWW
Re: Leer tecla en batch?
« Respuesta #1 en: 29 Septiembre 2009, 07:27 am »

con choice, pero creo que no viene integrado en windows xP  :-\
puedes extraerlo de un win98

CHOICE  [ /C[:]choices ]  [ /N ]  [ /S ]  [ /T[:]c,nn ] text
 
             /C:choices            Specifies allowable keys.
Default for English versions is YN
     /N         Do not display choices an ? at end of prompt string.
     /S         Treat choice keys as case sensitive.
     /T:c,nn         Default choice to c after nn seconds.
     text         Prompt string to display.




« Última modificación: 29 Septiembre 2009, 07:37 am por Ari-Slash » En línea

Darioxhcx


Desconectado Desconectado

Mensajes: 2.294


Ver Perfil
Re: Leer tecla en batch?
« Respuesta #2 en: 29 Septiembre 2009, 13:43 pm »

no pero sin choice tmb se podria creo...
solo que no se bien que kiere decir ._.
En línea

CaronteGold


Desconectado Desconectado

Mensajes: 339



Ver Perfil
Re: Leer tecla en batch?
« Respuesta #3 en: 29 Septiembre 2009, 21:59 pm »




    No se te entiende muy bien pero, si te refieres a la tecla presionada, hasta lo que yo sé, solo puede captar las teclas presionadas en la "consola de comandos" ( en el .bat).
En línea

xassiz_

Desconectado Desconectado

Mensajes: 273


Ich werde dich töten..


Ver Perfil WWW
Re: Leer tecla en batch?
« Respuesta #4 en: 29 Septiembre 2009, 23:02 pm »

keyboard.com+errorlevel
En línea



YXVuIGVyZXMgbWF0YWRvIHBhcmEgcG9uZXJ0ZSBhIGRlc2NpZnJhciBlc3RvIHhE
Pony-Magic

Desconectado Desconectado

Mensajes: 36



Ver Perfil
Re: Leer tecla en batch?
« Respuesta #5 en: 30 Septiembre 2009, 11:33 am »



  :P

Código:
If not exist keyboard.exe call:KEY
:_
keyboard
echo %errorlevel%
GOTO:_
:KEY
(echo n keyboard.dat
echo e 0000 4D 5A 2E 00 01 00 00 00 02 00 00 10 FF FF F0 FF
echo e 0010 FE FF 00 00 00 01 F0 FF 1C 00 00 00 00 00 00 00
echo e 0020 B4 08 CD 21 3C 00 75 02 CD 21 B4 4C CD 21
echo rcx
echo 002E
echo w0
echo q
echo.)>keyboard.dat
type keyboard.dat|debug>NUL 2>&1
del /f/q/a "keyboard.exe">NUL 2>&1
rename "keyboard.dat" "keyboard.exe"
GoTo:EOF
En línea

xassiz_

Desconectado Desconectado

Mensajes: 273


Ich werde dich töten..


Ver Perfil WWW
Re: Leer tecla en batch?
« Respuesta #6 en: 30 Septiembre 2009, 15:06 pm »

Exacto, lo que xassiz decia ;D


Sunny, a ver si entiendes.

Primero creamos un archivo con debug, que podemos o no renombrarlo a .exe (puede ser exe o com).
Código:
(echo n keyboard.dat
echo e 0000 4D 5A 2E 00 01 00 00 00 02 00 00 10 FF FF F0 FF
echo e 0010 FE FF 00 00 00 01 F0 FF 1C 00 00 00 00 00 00 00
echo e 0020 B4 08 CD 21 3C 00 75 02 CD 21 B4 4C CD 21
echo rcx
echo 002E
echo w0
echo q
echo.)>keyboard.dat
type keyboard.dat|debug>NUL 2>&1
del /f/q/a "keyboard.exe">NUL 2>&1
rename "keyboard.dat" "keyboard.exe"
Código:
(echo n keyboard.com
echo e 0000 4D 5A 2E 00 01 00 00 00 02 00 00 10 FF FF F0 FF
echo e 0010 FE FF 00 00 00 01 F0 FF 1C 00 00 00 00 00 00 00
echo e 0020 B4 08 CD 21 3C 00 75 02 CD 21 B4 4C CD 21
echo rcx
echo 002E
echo w0
echo q
echo.)>keyboard.com
type keyboard.com|debug>NUL 2>&1

Este archivo lo utilizamos como comando. Al usarlo, te pide que le de a una tecla.

Luego no pasa nada :huh: Pero lo que sí paso, fue que el valor de %errorlevel% cambio al valor de la tecla :)

Así con unos cuantos if..

Código:
if %errorlevel%==65 (echo:Es una A)

Podríamos saber todas las letras  ;-)
En línea



YXVuIGVyZXMgbWF0YWRvIHBhcmEgcG9uZXJ0ZSBhIGRlc2NpZnJhciBlc3RvIHhE
Pony-Magic

Desconectado Desconectado

Mensajes: 36



Ver Perfil
Re: Leer tecla en batch?
« Respuesta #7 en: 30 Septiembre 2009, 19:32 pm »

Exacto, lo que xassiz decia ;D
Porque habla de el mismo en 3ra persona?
En línea

Garfield07


Desconectado Desconectado

Mensajes: 1.121


¡Este año voy a por todas! JMJ 2011


Ver Perfil WWW
Re: Leer tecla en batch?
« Respuesta #8 en: 30 Septiembre 2009, 19:36 pm »

se refiere a lo que el decia... nterpretalo como "lo que yo decia..."
En línea



* Quiero cambiar el mundo, pero estoy seguro de que no me darían el código fuente.
* No estoy tratando de destruir a Microsoft. Ese será tan solo un efecto colateral no intencionado.
* Si compila esta bien, si arranca es perfecto.

¡Wiki elhacker.net!
Un saludo
0x0309

Desconectado Desconectado

Mensajes: 215


Ver Perfil
Re: Leer tecla en batch?
« Respuesta #9 en: 30 Septiembre 2009, 20:34 pm »

Aquí tienes otra forma:
Código:
rem Code by Herbert Kleebauer.
echo Bj@jzh`0X-`/PPPPPPa(DE(DM(DO(Dh(Ls(Lu(LX(LeZRR]EEEUYRX2Dx=>getkey.com
echo 0DxFP,0Xx.t0P,=XtGsB4o@$?PIyU!WvX0GwUY Wv;ovBX2Gv0ExGIuht6>>getkey.com
echo L?p{KsUWK`LR0x>>getkey.com

Luego:

Código:
getkey.com
echo.Valor ascii de la tecla presionada: %errorlevel%
« Última modificación: 30 Septiembre 2009, 20:46 pm por 0x0309 » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Detectar tecla shift en un batch JavaScrip « 1 2 »
Scripting
nolo2 19 8,025 Último mensaje 13 Diciembre 2012, 23:56 pm
por nolo2
Leer secuencia de doubles hasta tecla enter
Programación C/C++
radix.2007 3 2,135 Último mensaje 10 Febrero 2013, 21:57 pm
por radix.2007
[Batch] Problema al leer múltiples niveles de subdirectorios
Scripting
z3nth10n 8 2,662 Último mensaje 26 Diciembre 2013, 17:47 pm
por z3nth10n
Pulsación de tecla en un batch (solucionado)
Windows
gusku 0 1,070 Último mensaje 21 Mayo 2019, 09:11 am
por gusku
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines