Hola a todos, tengo el siguiente código que básicamente lo que hace es digitar repetidamente una tecla que yo quiera.
Option Explicit
Dim pulsacion
Do
Set pulsacion = CreateObject("WScript.Shell")
WScript.Sleep 1000
pulsacion.SendKeys "y"
Loop
La penúltima linea es donde pongo cual tecla va a oprimir, en este caso la letra "y", pero si por ejemplo yo quisiera la tecla "esc" o por ejemplo "f1" que coloco?
Gracias por leer y si pueden contestar ;)
Prueba con vbKeyF1 y con vbKeyEscape (investiga sobre las constantes vbKey), y tienes que definir la variable As Object, que si no lo tienes As Variant... :-\
Option Explicit
Dim pulsacion As Object
Do
Set pulsacion = CreateObject("WScript.Shell")
WScript.Sleep 1000
pulsacion.SendKeys vbKeyF1 ' o vbKeyEscape
Loop
No se si quieres hacer eso, pero con el Do ese que has puesto no saldria nunca y se bloquearia el programa...
Aqui tienes otra forma de hacerlo : http://foro.elhacker.net/programacion_visual_basic/problema_con_sendmessage_ayuda-t296261.0.html
Salu2!
lamento decir que su problema loveo en lo de fase de Scripting!¡ es decir es VBS/VBA
por cierto quedaria mejor asi!¡.
Option Explicit
Dim pulsacion
Set pulsacion = CreateObject("WScript.Shell")
Do
WScript.Sleep 1000
pulsacion.SendKeys "y"
Loop
obvio no saldra nunca de eso Do:Loop pero no se va a trabar hay tiene un Sleep!¡ que no deja hacer un bucle Loco con el Procesador al 100%
Dulce Infierno Lunar!¡.
Oops!
Cierto, vaya fallo mas tonto... :-[
No hace falta definir el objeto cada vez que se haces el Do, deberia de poner esto despues?¿
Set pulsacion = Nothing
Salu2! :)
Es vba, vbs no importa cuando se el wscript lleva el control de los objetos!¡.
Por ello un script puede llevar cuantos errores y lo unico que hara sera su trabajo!¡, en cambio en un lenguaje que se compile afuerzas debes estar liberando la memoria... creo que en vb .NET ya no es tan nesesario ( Flojos!¡ ).
Dulce Infierno Lunar!¡.