PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV 2024 → inactivité façon ecran de veille
inactivité façon ecran de veille
Iniciado por Philou, abr., 18 2005 12:41 PM - 4 respostas
Publicado em abril, 18 2005 - 12:41 PM
Bonjour chers amis (ies)

je cherche à mettre en place un mécanisme qui se déclancherait au bout de 5 minutes d'inactivité sur l'ordinateur comme le fait windows avec les écrans de veilles.

Bien sur le pourrais utiliser un timer et detecter les evenement souries et claviers mais n'y a t-il pas une solution plus élégante façon primitive de windows ?

J'ai été surpris l'autre jour par la complexité d'un simple RollOver et par le message window WM_USER+711 qui signifit tout simplement la fin du rollover. J'aimerais bien comprendre ces mecanismes car je suis sur que cela permet beaucoup de chose dont celle que je cherche.

D'avance merci
Publicado em abril, 18 2005 - 1:04 PM
Salut

Regarde donc l'exemple WD Ecran de veille. Tu y trouveras ce que tu cherches.

Ciao
http://wdgotcha.atspace.com
Publicado em abril, 18 2005 - 2:00 PM
Merci

Pas évident du tout cette exemple et surtout je trouve que c'est une usine à gaz par rapport à ce que je veux faire.

Merci quand même
Publicado em abril, 18 2005 - 3:25 PM
Salut.

Ne te réjouis pas, je n'es pas de solution pour toi.

Juste un message : je me suis heurté aussi à ce problème, j'ai bien essayé de m'y plongé, mais vraiment trop de manoeuvres pour un tel résultat.

En fait, la demande venait d'une secrétaire utilisant mon appli et souhaitant que l'ordi soit bloqué quand elle s'absente afin que le personnel non autorisé ne puisse accédé à l'appli.

Du coup, j'ai fait une petite fenêtre qui s'active avec l'appui d'un bouton (que j'ai placé dans toutes les fenêtres de l'appli) et qui re-demande le mot de passe de l'utilisateur courant pour se fermer.

Ainsi, si la secrétaire désire faire une pause pipi, elle clique juste sur ce bouton et elle sera la seule à débloquer l'appli.

Voilà, c'est un peu contraignant, certes, mais tous les utilisateurs(trices) en sont satisfait.

Bon courage dans ta recherche.
Publicado em abril, 19 2005 - 1:50 AM
Et bien ecoute j'ai réussi (non sans mal ^_^; ) a trouvé une solution relativement simple pour faire exactement ce que tu voulais (et a forcement ce que je voulais).

Malheureusement seul l'inactivité de la sourie est géré pour ne pas trop alourdir le système (et aussi parce que la gestion clavier avait l'air vraiment chiante)


* j'initialise mon projet avec :

//Gestion du timeOut session
DureeInactivite est un entier
OldCurseur est un entier
NewCurseur est un entier
IDTimer est un entier

OldCurseur = CurseurPos(cpEcran)

LanceTimer()


* Et voici la procédure LanceTimer() :

//Vérification de TimeOutActivite toutes les 30 secondes
IDTimer = TimerSys(TimeOutActivite,3000)


* Et voici la procédure TimeOutActivite() :

//Gestion du curseur
OldCurseur = NewCurseur
NewCurseur = CurseurPos(cpEcran)

//Gestion de la duree d'inactivite et du fait qu'il n'y a pas d'inactivité sans etre loggé
SI OldCurseur = NewCurseur ET FenEtat(Login)=8 ALORS
DureeInactivite += 30
SINON
DureeInactivite = 0
FIN

//Test si plus de 5 minutes d'inactivité
//et action par exemple une fin de session au bout de 30 secondes
SI DureeInactivite = 300 ALORS
OuvreFille(TimeOut)
FIN

Voila j'evite de detruire le timer car après pour le relancer c'est assez aléatoire à mon grand étonnement.

Voila j'ai pas réussi à faire plus simple ou plus efficace mais c'est toujours mieux que rien ^_^