TEMPS D'INACTIVITÉ (HOOK, WIN32)

cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014 - 3 oct. 2005 à 20:07
ndubien Messages postés 557 Date d'inscription dimanche 25 septembre 2005 Statut Membre Dernière intervention 10 mai 2014 - 6 déc. 2007 à 13:22
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/34076-temps-d-inactivite-hook-win32

ndubien Messages postés 557 Date d'inscription dimanche 25 septembre 2005 Statut Membre Dernière intervention 10 mai 2014 4
6 déc. 2007 à 13:22
oups..., "mon code" pas "mon cade" A+
ndubien Messages postés 557 Date d'inscription dimanche 25 septembre 2005 Statut Membre Dernière intervention 10 mai 2014 4
6 déc. 2007 à 13:21
Non désolé je ne suis pas Nicolas Holaire... Et content que mon cade ai pu servir à quelqu'un. A+
cs_benland Messages postés 14 Date d'inscription jeudi 20 février 2003 Statut Membre Dernière intervention 25 mai 2010
5 déc. 2007 à 15:24
Super ton code Nicolas! c justement ce que je recherchais! Mais dis moi, tu ne serais pas le Nicolas Holaire ke g connu a Perpignan ?
ndubien Messages postés 557 Date d'inscription dimanche 25 septembre 2005 Statut Membre Dernière intervention 10 mai 2014 4
29 nov. 2007 à 14:53
Salut tout le monde,
Ne serait-il pas préférable de faire deux hooks, un pour le clavier et un pour la souris?
Si non, quels seraient les problèmes de mon idée?
hilairenicolas Messages postés 398 Date d'inscription jeudi 30 octobre 2003 Statut Membre Dernière intervention 15 juin 2007 2
13 oct. 2005 à 20:03
waou !!! je connaissais pas ...

c'est pas trop simple ?? :p

d'un coup, je trouve que mon hook fait un peu ridicule
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
13 oct. 2005 à 19:55
Utiliser GetLastInputInfo() ne serait pas plus simple ?
hilairenicolas Messages postés 398 Date d'inscription jeudi 30 octobre 2003 Statut Membre Dernière intervention 15 juin 2007 2
6 oct. 2005 à 22:29
Voilà, une correction a été faite ==> mise à jour

Voir le commentaire

Si vous avez d'autres commentaires, je suis tout ouie :-)
hilairenicolas Messages postés 398 Date d'inscription jeudi 30 octobre 2003 Statut Membre Dernière intervention 15 juin 2007 2
6 oct. 2005 à 10:01
possible ...
ca va pas m'aider à faire marcher mon programme , lol

Si vous avez une autre idée pour faire un système d'inactivité, je suis partant
cs_patatalo Messages postés 1466 Date d'inscription vendredi 2 janvier 2004 Statut Modérateur Dernière intervention 14 février 2014 2
5 oct. 2005 à 23:42
il peut etre normal d'obtenir des messages parasites suivant le type de souris.
met un tel portable allumé a coté et tu verras le pire.
@++
hilairenicolas Messages postés 398 Date d'inscription jeudi 30 octobre 2003 Statut Membre Dernière intervention 15 juin 2007 2
4 oct. 2005 à 23:28
Je m'apercois que j'ai un comportement bizarre ...

De temps, en temps, alors que je ne bouge pas ma souris, est envoyé un message WM_MOUSEMOVE qui perturbe le chronométrage de l'inactivité.

Quelqu'un aurait-il une idée sur ce message parasite ?

Merci

(si quelqu'un veut tester dans son environnement pour me dire s'il observe le meme comportement, c'est très simple :
je propose cette marche à suivre :
- rajouter dans le pragma data_seg une variable
bool flag = false;
- rajouter dans la callback (juste en dessous de dernierCpt = GetTickCount ();)
if (flag)
{
if (ms.message == WM_MOUSEMOVE)
OutputDebugString("WM_MOUSEMOVE");
if (ms.message == WM_LBUTTONDOWN)
OutputDebugString("WM_LBUTTONDOWN");
if (ms.message == WM_LBUTTONUP)
OutputDebugString("WM_LBUTTONUP");
if (ms.message == WM_NCLBUTTONDOWN)
OutputDebugString("WM_NCLBUTTONDOWN");
if (ms.message == WM_RBUTTONDOWN)
OutputDebugString("WM_RBUTTONDOWN");
if (ms.message == WM_RBUTTONUP)
OutputDebugString("WM_RBUTTONUP");
if (ms.message == WM_KEYDOWN)
OutputDebugString("WM_KEYDOWN");
if (ms.message == WM_KEYUP)
OutputDebugString("WM_KEYUP");
flag = false;
}
- rajouter avant le return res/1000 de IdleTime
flag = (res/1000 > 10);

- télécharger dbgview.exe (qui redigire la sortie de Outputdebugstring) disponible sur http://www.sysinternals.com/Files/DebugViewNt.zip

- recompiler la dll, relancer tout :)
)

Merci de votre feedback
hilairenicolas Messages postés 398 Date d'inscription jeudi 30 octobre 2003 Statut Membre Dernière intervention 15 juin 2007 2
3 oct. 2005 à 22:12
J'viens de penser que je pourrais rajouter le message de la molette ...
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
3 oct. 2005 à 21:39
Pas une question de priorité mais simplement qu'un hook système doit se trouver dans une dll pour que le système en mappe une copie dans les processus cibles.
cs_Raish Messages postés 8 Date d'inscription mercredi 9 mars 2005 Statut Membre Dernière intervention 3 octobre 2005
3 oct. 2005 à 20:49
Pour sûr, puisque les hook ds DLL sont des hook systèmes et ils auront donc tjrs la priorité sur les hooks de programmes...
cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
3 oct. 2005 à 20:07
Vraiment obliger de DLLisé pour faire un hook :(
Rejoignez-nous