Relachement touche ctrl [Résolu]

Signaler
Messages postés
31
Date d'inscription
vendredi 27 janvier 2012
Statut
Membre
Dernière intervention
4 octobre 2013
-
Messages postés
31
Date d'inscription
vendredi 27 janvier 2012
Statut
Membre
Dernière intervention
4 octobre 2013
-
Bonjour!
j'ai voulu simuler une combinaison de touche (ctrl+Z)pour revenir en arrière, sur une application extérieur mais quand j'essaie avec l'API keybd_event, le touche ctrl n'est plus relaché, voici mon code:
Private Declare Sub keybd_event Lib "user32.dll" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Public Declare Function BringWindowToTop Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)


Private Sub Command1_Click()
dim clsP as CProcessInfo 'depuis la source de Philippe734 sur les processus
set clsP=New CProcessInfo 
hwd=clsP.GetProcessWindowHwndByName("appliexterne.exe")
 BringWindowToTop hwd 'pour mettre l'appliexterne au premier plan      
Sleep 200
    keybd_event 17, 0, 0, 0 'appui sur ctrl
    keybd_event vbKeyZ, 0, 0, 0 'appui sur Z
    keybd_event 17, 0, KEYEVENTF_KEYUP, 0 'relachement (à mon avis) du ctrl
    keybd_event vbKeyZ, 0, KEYEVENTF_KEYUP, 0 'relachement de Z
set clsP=Nothing
end sub

Le ctrl+Z est simulé parfaitement mais le problème c'est que la touche ctrl n'est plus relaché!
est-ce que quelqu'un peut m'aider SVP?
merci d'avance

PS: j'ai déja rechercher sur codes-sources mais il n'y a pas d'info sur comment "relacher ctrl", il n'y avait que comment relacher les autres touches du clavier (mais qui marche bien sauf pour ctrl)

4 réponses

Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
67
Pas le plus simple pour piloter une application

faire un SendMessage WM_COMMANDe en transmettent l'ID du menu a lancer

pas clari, prendre des cours de pilotage ^^

Renfield - Admin CodeS-SourceS - MVP Visual Basic & Spécialiste des RegExp
Messages postés
31
Date d'inscription
vendredi 27 janvier 2012
Statut
Membre
Dernière intervention
4 octobre 2013

merci pour le cours de pilotage Renfield
J'ai aussi trouvé quelque chose qui pourrait aider les autres forumeurs, une petite application qui s'appelle WinID, elle vous donne tous les informations sur n'importe quel truc survolé par le souris!

un grand merci à vbfrance!
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
67
similaire à Spy++ ou autre applications indispensables a qui souhaites piloter.

ravi que tu aies pu t'en sortir.

Renfield - Admin CodeS-SourceS - MVP Visual Basic & Spécialiste des RegExp
Messages postés
31
Date d'inscription
vendredi 27 janvier 2012
Statut
Membre
Dernière intervention
4 octobre 2013

merci à toi