Egyde
Messages postés158Date d'inscriptionlundi 17 mai 2004StatutMembreDernière intervention16 juillet 2007
-
24 oct. 2005 à 11:41
alexandreillusion
Messages postés37Date d'inscriptionlundi 7 juillet 2008StatutMembreDernière intervention14 mars 2011
-
28 mars 2009 à 18:56
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
alexandreillusion
Messages postés37Date d'inscriptionlundi 7 juillet 2008StatutMembreDernière intervention14 mars 2011 28 mars 2009 à 18:56
Code vraiment utile, court et efficace (même avec ma souris optique !!!)
Et encore un 10 pour l'auteur et sa disponibilité.
cs_flotho
Messages postés7Date d'inscriptionsamedi 21 février 2009StatutMembreDernière intervention20 août 2009 23 févr. 2009 à 12:11
Merci encore de tes avis éclairé.
A bientôt,
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 23 févr. 2009 à 12:09
a voir, j'utilises pas de souris optique et ne peux donc tester
cs_flotho
Messages postés7Date d'inscriptionsamedi 21 février 2009StatutMembreDernière intervention20 août 2009 23 févr. 2009 à 12:00
Yipee,
Je viens de trouver.
Quand j'ai voulu copier le code, j'ai vu que ma fonction n'était pas du bon type.
Alors je te remercie grandement.En revanche, comment dois je faire simplement pour éviter les problèmes de souris optique?
Dois je rajouter une fonction qui teste l'ancienne et la nouvelle position? si on a bougé de quelques pixels, le getlastinputinfo en tiendra t il compte?
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 23 févr. 2009 à 11:54
quel est ton code ?
cs_flotho
Messages postés7Date d'inscriptionsamedi 21 février 2009StatutMembreDernière intervention20 août 2009 23 févr. 2009 à 11:51
Bonjour RENFIELD
Merci de cette réponse express.
En effet lorsque je change le type de données, j'obtiens bien une valeur avec la fonction getlastinputinfo.
Toutefois LII.dwTime est ridiculement petit par rapport au ticketcount. Je reste donc toujours avec un test d'activité incohérent.
Peut être le type n'est il pas le bon.
Concrétement mon code est structuré de la façon suivante :
1 timer de 20 secondes qui appelle la fonction ci dessus telle quelle et teste une inactivité de 5 secondes via vIdleTimeout.
par exemple, je me retrouve avec un getticketcount à | GetTickCount 127612075905189 Long
et LII.dwTime = 7578484 Integer
Je pense que j'ai un problème entre le long et le Integer.
J'ai donc testé en passant mes types à Int64 mais je retombe dans le problème de LII.dwTime = 0. Je remarque toutefois dans ce cas que LII.cbSize reste à 16.
En résumé, je dirais Au secours ;-)
PS : J'ai débranché ma souris optique et je travaille avec un portable.
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 23 févr. 2009 à 06:26
dépend de ton code ^^
les déclarations d'APIs sont a adapter en .Net
Long=>Integer, par exemple
cs_flotho
Messages postés7Date d'inscriptionsamedi 21 février 2009StatutMembreDernière intervention20 août 2009 22 févr. 2009 à 16:55
Bonjour,
Ce code à l'air terrible par sa simplicité mais je n'arrive pas à le faire tourner sur XP et Microsft visual studio 2008.
La méthode GetLastInputInfo(LII) m'initialise toujours LII.dwd à la valeur 0 que je sois actif ou pas.
Du coup le test me dit que je suis toujours inactif
Qu'ais je pu oublier?
Merci de votre aide
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 26 juin 2007 à 08:11
Adesurmont> quel est ton code ?
nadia2K> aucun rapport avec mon code... voir global.asa et autres choses du genre. va sur www.aspfr.com, tu aura bien plus de réponses
nadia2k
Messages postés1Date d'inscriptionvendredi 22 juin 2007StatutMembreDernière intervention22 juin 2007 22 juin 2007 à 21:38
je voudrai voir le code qui permet de tester combien d'utlisateur visiter mon site.le code avec ASP.NET
cs_adesurmont
Messages postés13Date d'inscriptionmardi 14 janvier 2003StatutMembreDernière intervention 1 février 2011 27 nov. 2006 à 19:41
Je ne comprend pas ça fonctionnait bien et maintenant plus rien, rien ne se passe. Qu'est ce que la source a besoin comme resource pour fonctionner ?
Merci
cs_Tankian33
Messages postés18Date d'inscriptionmercredi 27 octobre 2004StatutMembreDernière intervention29 juin 2007 26 oct. 2005 à 10:29
Pour ce code oui :). Je vais jetter un oeil sur le tiens car ca va me servir, celui ci merite tout de meme un bon 8.
Egyde
Messages postés158Date d'inscriptionlundi 17 mai 2004StatutMembreDernière intervention16 juillet 2007 25 oct. 2005 à 14:19
Tankian33> 1 pixel suffit ;-)
cs_Tankian33
Messages postés18Date d'inscriptionmercredi 27 octobre 2004StatutMembreDernière intervention29 juin 2007 25 oct. 2005 à 09:18
Pas vraiment non ^^ pour le pacemaker
Sinon pour l'optique assez surprenant qd meme, car avec une souris de qualite c vraiment leger ce pb... M'enfin :)
nah666
Messages postés75Date d'inscriptionsamedi 30 août 2003StatutMembreDernière intervention 7 janvier 20081 25 oct. 2005 à 09:00
lol?
peacemaker ?, faiseur de paix ?
cs_EBArtSoft
Messages postés4525Date d'inscriptiondimanche 29 septembre 2002StatutModérateurDernière intervention22 avril 20199 24 oct. 2005 à 20:40
Faut instancier un monitoring de base genre branché son peacemaker directement sur la sortie RS232 !
Tu recupere l'activité cardiaque de l'utilisateur en direct c'est quand meme plus fiable. En cas de perte tu affiche une messagebox "Attention rythme faible" !!
lol @+
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 24 oct. 2005 à 16:50
parfois, elle bouge toute seule, réagis pas toujours bien, galère pour les FPS...
cs_Tankian33
Messages postés18Date d'inscriptionmercredi 27 octobre 2004StatutMembreDernière intervention29 juin 2007 24 oct. 2005 à 16:15
Qu'est ce qui te gene ds la souris optique ?
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 24 oct. 2005 à 12:14
moi qui n'aime pas les souris optiques, voilà un argument a ajouter à ma plédoirie en défaveur de cette outil malfaisant ^^
(TrackBall Powered)
Egyde
Messages postés158Date d'inscriptionlundi 17 mai 2004StatutMembreDernière intervention16 juillet 2007 24 oct. 2005 à 11:45
Je t'ai mis quand même 8, le code est vraiment très simple :-)
Egyde
Messages postés158Date d'inscriptionlundi 17 mai 2004StatutMembreDernière intervention16 juillet 2007 24 oct. 2005 à 11:41
C'est bien vu !
Le seul hic, c'est que GetLastInputInfo ne fait pas la distinction entre saisie clavier et déplacement de la souris ;-) Or, si tu recharges une souris optique dont la base est de mauvaise qualité, il est possible que ton curseur oscille de quelques pixels (je pense en particulier aux souris MemUp, snif). Dans ce cas précis, ton programme détecte toujours une présence. C'est d'ailleurs uniquement pour cette raison que j'ai choisi le point de vue inverse (détection de l'ABSENCE, avec un code un peu plus long mais capable de résoudre cette lacune), vue que je connaissais déjà cette API :
28 mars 2009 à 18:56
Et encore un 10 pour l'auteur et sa disponibilité.
23 févr. 2009 à 12:11
A bientôt,
23 févr. 2009 à 12:09
23 févr. 2009 à 12:00
Je viens de trouver.
Quand j'ai voulu copier le code, j'ai vu que ma fonction n'était pas du bon type.
Alors je te remercie grandement.En revanche, comment dois je faire simplement pour éviter les problèmes de souris optique?
Dois je rajouter une fonction qui teste l'ancienne et la nouvelle position? si on a bougé de quelques pixels, le getlastinputinfo en tiendra t il compte?
23 févr. 2009 à 11:54
23 févr. 2009 à 11:51
Merci de cette réponse express.
En effet lorsque je change le type de données, j'obtiens bien une valeur avec la fonction getlastinputinfo.
Toutefois LII.dwTime est ridiculement petit par rapport au ticketcount. Je reste donc toujours avec un test d'activité incohérent.
Peut être le type n'est il pas le bon.
Concrétement mon code est structuré de la façon suivante :
1 timer de 20 secondes qui appelle la fonction ci dessus telle quelle et teste une inactivité de 5 secondes via vIdleTimeout.
par exemple, je me retrouve avec un getticketcount à | GetTickCount 127612075905189 Long
et LII.dwTime = 7578484 Integer
Je pense que j'ai un problème entre le long et le Integer.
J'ai donc testé en passant mes types à Int64 mais je retombe dans le problème de LII.dwTime = 0. Je remarque toutefois dans ce cas que LII.cbSize reste à 16.
En résumé, je dirais Au secours ;-)
PS : J'ai débranché ma souris optique et je travaille avec un portable.
23 févr. 2009 à 06:26
les déclarations d'APIs sont a adapter en .Net
Long=>Integer, par exemple
22 févr. 2009 à 16:55
Ce code à l'air terrible par sa simplicité mais je n'arrive pas à le faire tourner sur XP et Microsft visual studio 2008.
La méthode GetLastInputInfo(LII) m'initialise toujours LII.dwd à la valeur 0 que je sois actif ou pas.
Du coup le test me dit que je suis toujours inactif
Qu'ais je pu oublier?
Merci de votre aide
26 juin 2007 à 08:11
nadia2K> aucun rapport avec mon code... voir global.asa et autres choses du genre. va sur www.aspfr.com, tu aura bien plus de réponses
22 juin 2007 à 21:38
27 nov. 2006 à 19:41
Merci
26 oct. 2005 à 10:29
25 oct. 2005 à 14:19
25 oct. 2005 à 09:18
Sinon pour l'optique assez surprenant qd meme, car avec une souris de qualite c vraiment leger ce pb... M'enfin :)
25 oct. 2005 à 09:00
peacemaker ?, faiseur de paix ?
24 oct. 2005 à 20:40
Tu recupere l'activité cardiaque de l'utilisateur en direct c'est quand meme plus fiable. En cas de perte tu affiche une messagebox "Attention rythme faible" !!
lol @+
24 oct. 2005 à 16:50
24 oct. 2005 à 16:15
24 oct. 2005 à 12:14
(TrackBall Powered)
24 oct. 2005 à 11:45
24 oct. 2005 à 11:41
Le seul hic, c'est que GetLastInputInfo ne fait pas la distinction entre saisie clavier et déplacement de la souris ;-) Or, si tu recharges une souris optique dont la base est de mauvaise qualité, il est possible que ton curseur oscille de quelques pixels (je pense en particulier aux souris MemUp, snif). Dans ce cas précis, ton programme détecte toujours une présence. C'est d'ailleurs uniquement pour cette raison que j'ai choisi le point de vue inverse (détection de l'ABSENCE, avec un code un peu plus long mais capable de résoudre cette lacune), vue que je connaissais déjà cette API :
http://www.vbfrance.com/code.aspx?ID=34311