Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: neeeko en 22 Mayo 2011, 03:48 am



Título: Cuando apreto A = timer1.enabled = false
Publicado por: neeeko en 22 Mayo 2011, 03:48 am
Como hago para realizar esa acción?  les agradezco mucho por la ayuda .
Un saludo grande


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: raul338 en 22 Mayo 2011, 04:45 am
No se entiende la pregunta, reformulala y si puedes agrega el codigo que llevas hasta ahora


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: neeeko en 22 Mayo 2011, 04:49 am
No se entiende la pregunta, reformulala y si puedes agrega el codigo que llevas hasta ahora
Mira por ejemplo , nesecito que cuando yo aproto la letra A pase esto
Código:
SetCursorPos 284, 321
Call MouseLeftClick(284, 321)
End Sub


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: raul338 en 22 Mayo 2011, 04:58 am
Busca sobre hotkeys, hay mucha info :)


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: neeeko en 22 Mayo 2011, 05:10 am
Busca sobre hotkeys, hay mucha info :)
Pero nesecito el comando para hacerlo sabes ? o es hot key el comando ... Como es ?


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: raul338 en 22 Mayo 2011, 05:12 am
No es un comando, sino varios. HotKey se llama lo que buscas. Esperar a que ciertas teclas se presionen y cuando se presionan ejecutar X codigo


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: neeeko en 22 Mayo 2011, 05:23 am
No es un comando, sino varios. HotKey se llama lo que buscas. Esperar a que ciertas teclas se presionen y cuando se presionan ejecutar X codigo
AAA , me quedo claro . pasa que lo nesecito para utilizarlo con otro programa ... entendes , nesecito el comando


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: seba123neo en 22 Mayo 2011, 20:11 pm
AAA , me quedo claro . pasa que lo nesecito para utilizarlo con otro programa ... entendes , nesecito el comando

claro, queres que te demos el codigo, che tanto te cuesta buscar una palabra en el google ? aca nadie te va a dar el codigo y menos cuando demostras que ni buscaste.

y si llegaste a buscar y no entendes, aca no enseñamos a programar de 0 tampoco, con tener leido completo un libro de visual basic esto lo deberias saber hacer, y en internet podes encotnrar varios libros que te eseñan de 0, buscalos.


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: neeeko en 23 Mayo 2011, 00:57 am
claro, queres que te demos el codigo, che tanto te cuesta buscar una palabra en el google ? aca nadie te va a dar el codigo y menos cuando demostras que ni buscaste.

y si llegaste a buscar y no entendes, aca no enseñamos a programar de 0 tampoco, con tener leido completo un libro de visual basic esto lo deberias saber hacer, y en internet podes encotnrar varios libros que te eseñan de 0, buscalos.
Seba , chabon . No quiero que me armen el codigo . quiero que me asesoren como hicieron ya muchas veces aca . SOlo eso pude hacer lo de la tecla barra . con key evnt .  Solo nesecito qeu me ayuden . Como hago las hot keys . con keydown ? como hago ?


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: Edu en 23 Mayo 2011, 01:03 am
Pero si te dicen que tenes buscar cual es el problema? busca en google ejemplos de uso de hotkeys


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: 79137913 en 23 Mayo 2011, 01:10 am
HOLA!!!

Si queres detectar pulsaciones de teclas podrias usar el metodo Catch, que sirve pero hay veces que no reconoce la pulsacion y aparte consume muchos recursos, sino podes hacer un hook al teclado, pero dado a las preguntas que estas haciendo dudo que se te haga facil hacer un hook(sin ofender), por ende recomiendo catch en tu caso pero siempre es mejor un hook.

GRACIAS POR LEER!!!


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: neeeko en 23 Mayo 2011, 01:12 am
Pero si te dicen que tenes buscar cual es el problema? busca en google ejemplos de uso de hotkeys
Hice esto pero me tira error.
Código:
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
    If KeyCode = (vbKeyF9) Then
     Timer1.Enabled = False
    End If
End Sub


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: Edu en 23 Mayo 2011, 01:19 am
A mi me funciona, dinos cual es el error


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: neeeko en 23 Mayo 2011, 01:21 am
sadfasdf


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: Edu en 23 Mayo 2011, 01:31 am
Estas haciendo tipo un bot? que al apretar la tecla A empieze a escribir espacios hasta que pulses la tecla S?
Creo que lo podias hacer simplemente sin apis aunque no es lo mejor..

Código
  1. Option Explicit
  2.  
  3. Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
  4.  
  5.    If KeyCode = vbKeyA Then
  6.     Timer1.Enabled = True
  7.     End If
  8.  
  9.    If KeyCode = vbKeyS Then
  10.     Timer1.Enabled = False
  11.     End If
  12.  
  13. End Sub
  14.  
  15. Private Sub Timer1_Timer()
  16. SendKeys " "
  17. End Sub
  18.  



Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: neeeko en 23 Mayo 2011, 01:38 am
@XXX-ZERO-XXX
Mira con el codigo que me pasaste no me anda boliya ... osea no para de apretar la barra con la s . Mira si yo ponele quiero hacer esto ... es mas facil ?
Código
  1. Option Explicit
  2.  
  3. Private Sub Command1_Click()
  4. Timer1.Enabled = True
  5. End Sub
  6.  
  7. Private Sub Command2_Click()
  8. Timer1.Enabled = False
  9. End Sub
  10.  
  11. Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
  12.  
  13.    If KeyCode = (vbKeyA) Then
  14.     Command1_Click.Enabled = True
  15.     End If
  16.  
  17.    If KeyCode = (vbKeyS) Then
  18.     Command2_Click() = False
  19.     End If
  20.  
  21. End Sub
  22.  
  23. Private Sub Timer1_Timer()
  24. SendKeys " "
  25. End Sub
  26.  


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: Edu en 23 Mayo 2011, 01:48 am
No te confundas mucho, no hagas eso, y todavia esta mal.
A mi el codigo que te pase me funciona, dices que no para de presional el espacio pero lo presiona aunquesea? a mi me anda perfecto.

Al usar Form_KeyDown capturara las teclas que se presionen cuando estas situado en el form, si estas en otra cosa y apretas S obvio que no pasará nada.


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: neeeko en 23 Mayo 2011, 01:58 am
Sigo sin entender amigo ... La verdad no me sale . te agradezco igual e ante mano .
Saludos


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: raul338 en 23 Mayo 2011, 03:14 am
Mira, buscar no cuesta nada ;)

Este es el metodo catch que menciono 79137913, bien explicado, simple pero no es 100% eficaz - ElGuille - Usar HotKeys en VB6 (http://www.elguille.info/colabora/vb2006/lobosoft_HotKeys.htm)

Y aca, y aunque en ingles (no encontre el mismo codigo explicado en español  :¬¬ una lastima, despues habian metodos mas "dificiles" de implementarlo, o simplemente faciles con uso de clases, pero no era mi idea)
RegisterHotKey Visual Basic 6 API Function (http://www.ex-designz.net/apidetail.asp?api_id=584)


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: neeeko en 23 Mayo 2011, 06:11 am
Mira, buscar no cuesta nada ;)

Este es el metodo catch que menciono 79137913, bien explicado, simple pero no es 100% eficaz - ElGuille - Usar HotKeys en VB6 (http://www.elguille.info/colabora/vb2006/lobosoft_HotKeys.htm)

Y aca, y aunque en ingles (no encontre el mismo codigo explicado en español  :¬¬ una lastima, despues habian metodos mas "dificiles" de implementarlo, o simplemente faciles con uso de clases, pero no era mi idea)
RegisterHotKey Visual Basic 6 API Function (http://www.ex-designz.net/apidetail.asp?api_id=584)

Hola , gracais por la rta ya lo habia encontrado el de guille peor cuando pongo el codigo me tira un errror . http://www.elguille.info/colabora/vb2006/lobosoft_HotKeys.htm


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: Edu en 23 Mayo 2011, 07:36 am
Entonces hay algo que no nos estas diciendo, es decir, dinos mas que hace tu codigo, ya que por ejemplo el link que dejaste dice esta nota:

Citar
Observaciones:
El Timer1 tiene que tener un intervalo de 10 para que detecte las teclas sin dejarse ninguna ( cosa que pasaría si pusiéramos un intervalo de 2000 por ejemplo. )

Fijate si no es tu caso..


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: neeeko en 23 Mayo 2011, 08:34 am
Entonces hay algo que no nos estas diciendo, es decir, dinos mas que hace tu codigo, ya que por ejemplo el link que dejaste dice esta nota:

Fijate si no es tu caso..
Me itra un error  en la declaracion ( _


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: 79137913 en 23 Mayo 2011, 13:39 pm
HOLA!!!

xxxZEROxxx, no el codigo que ingresaste, no le sirve, el no quiere detectar la pusacion con el formulario activo, el quiere en otro programa apretar tecla cualquiera (Homero: "Esto de la computacion es muy dificil, no puedo encontrar la tecla 'Cualquiera'") y luego que se ejecute lo que el quiere.

GRACIAS POR LEER!!!


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: CAR3S? en 23 Mayo 2011, 19:49 pm
no lei las respues tas pero te digo lo "logico"

1 timer con intervalo 1 (aparte) ON

2 verifico casa 1 (el intervalo 1), si la tecla A esta siendo apretada

esta apretada? (if then)
si? entonces,
timer1.enabld=false
no?entonces, no pasa nada

end sub


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: Edu en 23 Mayo 2011, 20:04 pm
De todos modos no dice nada el usuario xD

Porque no dejas TODO EL CODIGO y nos marcas bien cual es el error, y seria bueno que digas que intentas hacer porque talvez quieres hacer lo que dice 79137913 ya que las letras A y S se apretan solo si tienes el form activo..


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: BlackZeroX en 23 Mayo 2011, 20:21 pm
Estero sepas leer, si no sabes ingles, hay esta el traductor de google.

Hooks (http://msdn.microsoft.com/es-mx/library/ms632589(v=vs.85).aspx).
SetWindowsHookEx Function (http://msdn.microsoft.com/es-mx/library/ms644990(v=vs.85).aspx) (puedes usar alguna de estas dos constantes: WH_KEYBOARD_LL o WH_KEYBOARD).

P.D.: raul338 tiene un Ctl que te puede ayudar en esto que deseas hacer.

Dulces Lunas!¡.


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: neeeko en 24 Mayo 2011, 11:26 am
Gente . NEsecito ayuda con este code .
Código:
Private Declare Function GetAsyncKeyState Lib "user32.dll" (ByVal vbKey As Long) As Integer
Private Declare Sub keybd_event Lib "user32.dll" (_ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwflags As Long, _
    ByVal dwExtraInfo As Byte) As Integer


Public Const VBKeyALT = &H12
Public Const VBKeyF4 = &H73
Me dice que no se puede poner el _ y el as....
Ayuda porfavor


Título: Re: Cuando apreto A = timer1.enabled = false
Publicado por: raul338 en 24 Mayo 2011, 15:45 pm
El _ (si no es parte del nombre de un objeto) es un indicador de que continua en la siguente linea, y no debe haber nada mas hasta el fin de linea

deberia quedarte asi

Código
  1. Private Declare Sub keybd_event Lib "user32.dll" ( _
  2.    ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwflags As Long, _
  3.    ByVal dwExtraInfo As Byte) As Integer



PD: Pon siempre codigo en [code=vb]Private s As String ' Codigo coloreado![/code]
y se ve asi
Código
  1. Private s As String ' Codigo coloreado!