26Fermer28
ZephLe 24/01/2011 à 18:32
GoldenCrystal (./24) :
Sinon, le meilleur moyen est l'injection de dll. (bis ^^)

C'est sûr que c'est beaucoup plus fiable, mais mon objectif était de rester générique donc l'injection de DLL n'est pas possible :/

Sinon je comprends pas trop le lien de Link, mais ça sous-entend que le lParam passé au PostMessage (qui peut contenir des flags indiquant l'état des touches shift, ctrl et alt) n'est pas fiable ? Parceque si c'est ça, je comptais juste faire comme ce que décrit GC en ./20 : keydown+shift, keydown+a, keyup+a, keyup+shift (donc 4 PostMessage en tout). En revanche pour une raison qui m'échappe SendMessage ne fonctionne pas du tout.

Pour résumer, j'ai encore des bugs avec PostMessage mais ça permettrait *presque* de faire ce que je veux si je pouvais chopper le handle du contrôle qui a le focus. Manque de bol, je n'ai aucun moyen de chopper ce handle si la fenêtre qui contient le contrôle n'est pas au premier plan.

Faute de solution, il faudra que je reparte sur SendInput avec des SetForegroundWindow qui clignottent de partout sad