Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: krisalid en 25 Enero 2013, 19:06 pm



Título: ayuda con un batch
Publicado por: krisalid en 25 Enero 2013, 19:06 pm
hola amigos del elhacker quisiera pedirles ayuda con algo de pequeña programacion
la verdad soy nuevo en esto y he buscado intentado y no lo he conceguido me gustaria hacer un archivo bat que me de "esc" en cierto programa que yá se encuentra en ejecucion no necesito ejecutarlo desde el bat sino que, lo que pretendo el que, al correr el bat mande esc al programa que yo le indique( me refiero al que yo indique por que hay varios programas en ejecucion y solo quiero mandarle esc a uno solo)
por ejemplo he blobado con:
Código
  1. WshShell.Sendkeys "{esc}"
lo guardo como close.bat y al ejecutarlo sale la ventana pero no hace nada
porfavor ayudenme antes de que se me caiga el cabello de no encontrar lo que busco. gracias espero sus respuestas


Título: Re: ayuda con un batch
Publicado por: Stakewinner00 en 25 Enero 2013, 19:08 pm
Mira este ejemplo haber si te sirve

http://msdn.microsoft.com/en-us/library/ms172702(v=vs.80).aspx (http://msdn.microsoft.com/en-us/library/ms172702(v=vs.80).aspx)

si tienes dudas comentalo.

también puedes hacer un sleep de unos 10s y abrir la ventana en que quieres que envie el esc, hace tiempo lo use para hacerle una broma a un amigo.


Título: Re: ayuda con un batch
Publicado por: krisalid en 25 Enero 2013, 19:43 pm
GRACIAS Stakewinner00
me sorprende la rapidez con la que me contestan en este foro
mira lei el articulo que me enviaste y segun con lo que le entendi quedo asi esto
lo guarde como close.bat pero no hizo nada
Código
  1. Dim ProcID As Integer
  2. ProcID = Shell("ELPROGRAMA QUE BUSCO.EXE", AppWinStyle.NormalFocus)
  3. AppActivate(ProcID)
  4. My.Computer.Keyboard.SendKeys("esc", True)
lo otro que me comentabas no se puede por que hay una ventana que esta adelante de el preograma que le quiero enviar el pulso.



[MOD] Usa el botón "Insertar código"


Título: Re: ayuda con un batch
Publicado por: Eleкtro en 25 Enero 2013, 19:43 pm
Advertencia - mientras estabas escribiendo, una nueva respuesta fue publicada. Probablemente desees revisar tu mensaje.



EDITO: Lo estás haciendo mal, olvídate de ese ejemplo, y también de Batch (y los .bat), el ejemplo es exclusívamente para VisualBasic (no VisualBasicScript).

he blobado con:
WshShell.Sendkeys "{esc}"
lo guardo como close.bat y al ejecutarlo sale la ventana pero no hace nada

Es que eso no es Batch, es VisualBasicScript

Usando Batch no puedes hacer lo que pretendes de forma nativa, así que necesitas usar cualquier otro lenguaje... como por ejemplo el mencionado VBS.

Te indico los pasos:
  • Seleccionar la ventana (Es decir, activar la ventana que deseas).
  • Enviarle la pulsación de la tecla "escape" a la ventana activa.

Y es algo que se ha comentado cientos de veces, usa el buscador del foro si te quedan dudas porfavor.

Código
  1. Dim objShell
  2. Set objShell = WScript.CreateObject("WScript.Shell")
  3.  
  4. objShell.AppActivate "Bloc de notas"
  5. objShell.Sendkeys "{ESCAPE}"

Saludos.


Título: Re: ayuda con un batch
Publicado por: krisalid en 25 Enero 2013, 19:52 pm
ok muxa gracias ahora mismo lo buscare cualquier duda o solucion la publico para alguien que este igual de perdido como yo,
 
saludos