Erreur de WinXP avec l'API mouse_event... Aidez-moi STP!

Signaler
Messages postés
8
Date d'inscription
vendredi 28 janvier 2005
Statut
Membre
Dernière intervention
4 février 2005
-
Messages postés
8
Date d'inscription
vendredi 28 janvier 2005
Statut
Membre
Dernière intervention
4 février 2005
-
Il y a beaucoup de documentations sur ce site qui expliquent comment faire clicker ma souris avec l'API mouse_event.

'Le bouton gauche de la souris s'enfonce
Call mouse_event(MOUSEEVENTF_LEFTDOWN OR MOUSEEVENTF_ABSOLUTE, 0, 0, 0, 0)
'le bouton gauche de la souris se relache
Call mouse_event(MOUSEEVENTF_LEFTUP OR MOUSEEVENTF_ABSOLUTE, 0, 0, 0, 0)

Bref, ça marche dans windows 98, mais quand je l'essaye dans windows xp, le windows foque et redémarre l'ordi. Si quelqu'un pourrait m'éclaircir là-dessus, ce serait vraiment une grande aide pour moi, car je n'ai pas d'autres choix que d'utiliser winXP pour mon prog!!

Merci d'avance!



The secret to creativity is knowing how to hide your sources - Einsetein

4 réponses

Messages postés
1488
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
3 décembre 2007
24
Pourquoi mettre call ????
Regarde mes sources! Et j'ai XP...

[g]BgB S/g
Messages postés
8
Date d'inscription
vendredi 28 janvier 2005
Statut
Membre
Dernière intervention
4 février 2005

Hummm....
Ça se peut que le problème n'est pas le windows xp, mais MON WinXP, car je viens de checker à quelques places, pi ça à l'air que ça marche pour tlm avec xp (sauf moi ...). En tout cas, je vais checker sur un autre ordi avec XP, pi j'essayerai de règler le problème.

Tes sources son interessantes, mais malheureusement elle ne peuvent pas m'aider... merci quand-même! Mais j'aurais encore qqchose...., tu saurais tu comment capturer tous les mouseUp et mouseDown, même ceux qui sont en dehors du form, car ça j'en aurais aussi besoin dans mon projet?

P.S: Ça ne change rien de mettre call ou pas, c juste une de mes habitudes...!

The secret to creativity is knowing how to hide your sources - Einsetein
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
130
Pour le mouve_event, cela marche très bien sous WinXP (aucun problème chez moi en tout cas !).



Pour récupèrer les événements souris, utilise la fonction de l'API
SetCapture qui permet d'intercepter les événements et les rediriger
vers la fenêtre de ton choix. Par contre, cela bloque toutes les autres
fenêtres au niveau de la souris !



Ne pas oublier de faire un ReleaseCapture lorsque tu as fini !

DarK Sidious

Administrateur et reponsable VB/API du site www.ProgOtoP.com
Messages postés
8
Date d'inscription
vendredi 28 janvier 2005
Statut
Membre
Dernière intervention
4 février 2005

Hey, Merci beaucoup Dark! J'ai essayé sur un autre WinXp, pi effectivement ca marche... va falloir que j'check la congifuration de mes driver pour règler le problème.

En passant, j'ai jeté un coup d'oeil sur ton API Viewer en français.... vraiment bien fait! Les explications et les examples, c'est vraiment le comble de tout! Tu devrais demander à NIX pour qu'il le mette en évidence à quelque part sur le site, car je suis tombé dessus tout-à-fait par hazard.

Ah ouais, pi à propos du "mouse capture", je pense que je me suis mal exprimé... Ce que je veux exactement, c'est de faire un espèce de keylogger qui va enregistrer tous les clicks de souris à la milliseconde près. En fait, je veux enregistrer tous les mouseevents que je ferais pendant que je surferais sur internet, pour que je puisse ensuite les faire rejouer des milliers de fois automatiquement .

J'ai une idée comment je pourrais le faire avec SetCapture, sauf que ce serait d'une façon pas très pratique et assez compliquée. Dans le genre de:

'J'ai SetCapture en permanance sur un certain objet, pi quand j'effectue un click, il enregistre sa position en utilisant l'évent mouse_down de l'objet ; fait ReleaseCapture; utilise mouse_event pour faire clicker la souris sur la place ou j'ai clické initiallement; pi finallement, il refait SetCapture sur l'objet.

Bref, je ne suis pas sur de l'efficacité de ceci... Si t'aurais une idée comment le faire plus directement (genre lire les Windows Messages qui consernent la souris...), je serais très reconnaissant.

Merci

The secret to creativity is knowing how to hide your sources - Einsetein