Autor
|
Tema: pulsaciones de teclas, fallan... (Leído 10,303 veces)
|
engel lex
|
Buenas... escribo en esta ocasión para saber si hay algún método para simular pulsaciones a parte de las básicas, ya que intento enviarle pulsaciones a un programa y este está ignorando incluso eventos simulados de mouse ignora todo lo que le paso... los métodos funcionan ya que en otros programas hace lo que quiero y de maravilla...
por lo menos el clásico sendkeys, me funciona para todos los programas, pero si lo intento con el como ventana activa me lanza un aviso de que no tiene permisos (intente fallidamente corriéndolo como admin)
los sendmessage y postmessage los ignora completamente, mouse_event y kybd_event completamente ignorados... existe algún método que simule una pulsación física real? aunque sea simular un teclado por usb :s no se...
incluso en lineas generales si el programa está como ventana activa no puedo realizar eventos de mouse o teclado... (que tipo de magia negra usa?)
Descubri que el programa es fobico al teclado en pantalla (en w7) y hace lo posible por cerrarlo, logre mantenerlo abierto y consegui que si enviaba correctamente la pulsciones... alguien sabe que metodo puede estar usando? (no importa si me tengo que extender a c u otro lenguaje para simularlo... tampoco puedo usar los eventos para mover el mouse porque al estar la ventana como activa, todo muere)
Actualizacion:
SendInput en c++ tampoco funciona
Actualizacion 2:
no se, ya he intentado lo que he podido ya que no logro sendmessage ni sendpost a el teclado virtual... se podría hacer algo tan extremo como inyectar la memoria del teclado virtual (que debería ser mas fácil que el juego ya que este teóricamente no esta protegido contra hack) para que inicie la rutina de haber clickeado en x lugar? antes he hecho rutinas de lectura e inyeccion de memoria peor para juegos simples... pero disparar un evento no sabría ni por donde empezar :s
|
|
« Última modificación: 7 Agosto 2011, 00:55 am por engelx »
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
x64core
Desconectado
Mensajes: 1.908
|
vale haz dicho que con postmessage y sendmessage no sirve? o no sabes como hacerlo con esas apis ???
|
|
|
En línea
|
|
|
|
engel lex
|
En general de mis intentos... Option Explicit Private Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Private Const WM_KEYDOWN = &H100 Private Const WM_KEYUP = &H101 Private Const VK_SPACE = &H20 Private Const VK_F1 = &H70 Private Sub Command1_Click() Dim hWnd As Long 'hWnd = FindWindow(vbNullString, "Sin título: Bloc de notas") hWnd = FindWindow(vbNullString, Text1.Text) Print hWnd Call PostMessage(hWnd, WM_KEYDOWN, VK_F1, 0&) Call PostMessage(hWnd, WM_KEYUP, VK_F1, 0&) End Sub
si hago eso en el bloc de notas y cualquier aplicacion perfecto... si lo hago en el juego... nada no necesito un super codigo, ni necesito armar un super programa para usuario -.- con que me envie f1 y f2 al juego aunque tenga que modificar algo del codigo manualmente cada vez, soy feliz! Actualizacion: si abro el spy++ mientras el juego está abierto me sale un mensaje diciendo "Cannot ser the WH_GETMESSAGE hook. Message logging in inoperable" en lineas generales creo que el spy++ no me ayuda mucho aqui :S creo
|
|
« Última modificación: 7 Agosto 2011, 03:42 am por engelx »
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
engel lex
|
logre con postmenssage y un poco de trabajo que el teclado virtual aceptara las pulsaciones... el conflicto ahora, es que si son pulsaciones simuladas el juego no las acepta, tienen que se reales del mouse :s wth??
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
x64core
Desconectado
Mensajes: 1.908
|
emm noce pero lo que puede suceder es que no le envias las pulsaciones al control o al objeto que quieres que se las envies mas o menos que tipo de programa es?
|
|
|
En línea
|
|
|
|
engel lex
|
es un juego... con estos de proteccion bajo nProtect... enviarle comando directamente no sirve... y el teclado virtual (teóricamente) envía pulsaciones a la ventana activa... el asunto es que si lo dejo automático no hace nada, sin tocar mas nada ni modificar nada hago click sobre el teclado virtual y mágicamente si funciona... (y con otro programa fuera del juego las pulsaciones por software si están funcionando) tanta posibilidad tiene un programa para saber que las pulsaciones que van a otro son reales o no :s
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
x64core
Desconectado
Mensajes: 1.908
|
pues me imagino que el juego debe de detectar eso no tambien tendrias que fijarte porq algunos juegos en donde uno escribe no son controles y ya haz probado es distintas partes del juego enc onfig o ventanas asi
|
|
|
En línea
|
|
|
|
engel lex
|
es un juego en directx (por lo que deduzco de los errores que alguna vez ha arrojado) y por spy++ solo me entrega un handler universal que es el de la aplicacion (ya que incluso el spy++ lanza una advertencia de "Cannot ser the WH_GETMESSAGE hook. Message logging in inoperable" y se queda solo para ver quien es el hwnd de quien :s (y ya de ahi si no se como revisar los child o handler de estos de una ventana :s)
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
x64core
Desconectado
Mensajes: 1.908
|
podes usar las apis enumchildwindows , findwindowex con enumchildwindow te enumera todo todas los child aunq la vdd pana dudo que funcione pero prueba con findwindow buscas una determinada habria que venga alguien mas experto para que te digas que mas puedes hacer
|
|
|
En línea
|
|
|
|
engel lex
|
estoy usando findwindow, findwindowEx y postmessage... dejame check el api de enumchilds y doy aviso... pero que que por ser directx el maneja todo junto en una sola ventana
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Simular pulsaciones del mouse
Programación Visual Basic
|
aaronduran2
|
1
|
5,393
|
24 Marzo 2008, 22:43 pm
por ((( SPAWN )))
|
|
|
enviar pulsaciones
Programación Visual Basic
|
manel92
|
5
|
3,312
|
18 Junio 2009, 03:14 am
por yovaninu
|
|
|
Enviar pulsaciones de teclas
« 1 2 »
Programación C/C++
|
s_azazel
|
10
|
11,375
|
4 Noviembre 2010, 21:40 pm
por тαптяα
|
|
|
pulsaciones teclas ignoradas
Hacking
|
engel lex
|
3
|
4,199
|
8 Agosto 2011, 14:22 pm
por engel lex
|
|
|
[VB .NET] Enviar pulsaciones API SendMessage
.NET (C#, VB.NET, ASP)
|
kub0x
|
1
|
3,779
|
17 Noviembre 2011, 22:31 pm
por seba123neo
|
|