Hola soy un programador de Visual Basic y estoy intentando crear un programa que me mapee el Joystick de forma que al pulsar un boton este simule que se a pulsado una tecla del teclado.
Lo he conseguido desarrollar, pero con los programas basados con DirectX no me funciona, ¿sabeis lo que debo de hacer?.
Para emular la pulsación de la tecla utilizo la funcion keybd_event:
llamandolas de este modo:
Bueno, pues resulta que DirectX no me reconoce la emulacion de la pulsación de las teclas.
Lo que me haria falta es una funcion que simule como si yo hubiera pulsado una tecla,
es decir un SendKey(tecla) pero separado en SendKeyUP(tecla) y SendKeyDown(tecla).
Para asi poder decir que cuando pulse el Joystick, que envie la pulsación de la tecla al programa que este activo en ese momento, no se si me explico.
Esto sirve para juegos que utilizan solo el teclado y no puedes utilizar el joystick, emulo el teclado mediante el joystick, utilizando el joystick para jugar en vez del teclado.
Pero resulta que para juegos o programas desarrollados con DirectX no me reconocen el SendKey ni el keybd_event no se si es que tengo que hacer el EXE o es que para DirectX hay que utilizar otras funciones para simular la pulsación de la tecla.
¿Podeis ayudarme?
Muchas gracias.
Lo he conseguido desarrollar, pero con los programas basados con DirectX no me funciona, ¿sabeis lo que debo de hacer?.
Para emular la pulsación de la tecla utilizo la funcion keybd_event:
Código [Seleccionar]
Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal _
bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
llamandolas de este modo:
Código [Seleccionar]
Public Sub pKeyDOWN(iKey As Integer)
'iKey=ASC("A")
keybd_event iKey, 0, 0, 0
End Sub
Public Sub pKeyUP(iKey As Integer)
keybd_event iKey, 0, KEYEVENTF_KEYUP, 0
End Sub
Bueno, pues resulta que DirectX no me reconoce la emulacion de la pulsación de las teclas.
Lo que me haria falta es una funcion que simule como si yo hubiera pulsado una tecla,
es decir un SendKey(tecla) pero separado en SendKeyUP(tecla) y SendKeyDown(tecla).
Para asi poder decir que cuando pulse el Joystick, que envie la pulsación de la tecla al programa que este activo en ese momento, no se si me explico.
Esto sirve para juegos que utilizan solo el teclado y no puedes utilizar el joystick, emulo el teclado mediante el joystick, utilizando el joystick para jugar en vez del teclado.
Pero resulta que para juegos o programas desarrollados con DirectX no me reconocen el SendKey ni el keybd_event no se si es que tengo que hacer el EXE o es que para DirectX hay que utilizar otras funciones para simular la pulsación de la tecla.
¿Podeis ayudarme?
Muchas gracias.