begin process at 2012 05 24 22:20:33
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

API

 > [C#2008] OBSERVER L'ACTIVITÉ INPUT (CLAVIER SOURIS) DE L'UTILISATEUR

[C#2008] OBSERVER L'ACTIVITÉ INPUT (CLAVIER SOURIS) DE L'UTILISATEUR


 Information sur la source

Note :
9 / 10 - par 1 personne
9,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :API Source .NET ( DotNet ) Classé sous :GetLastInputInfo, activité, utilisateur, idle, clavier souris Niveau :Débutant Date de création :11/04/2010 Date de mise à jour :11/04/2010 00:54:33 Vu / téléchargé :3 212 / 158

Auteur : PCPT

Ecrire un message privé
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (1)
Ajouter un commentaire et/ou une note


 Description

Cette classe permet de récupérer à la demande le temps depuis lequel l'utilisateur est inactif, ou de récupérer les évènements

d'entrée / sortie en activité ainsi que d'agir au bout d'un seuil maximum prédéfini

Source

  • //Exemple d'utilisation
  • using System;
  • using System.Windows.Forms;
  • namespace IdleInput
  • {
  • public partial class Form2 : Form
  • {
  • public Form2()
  • {
  • InitializeComponent();
  • }
  • private InputInfos.ClsAfIdleInfos IdleWatch = null;
  • private void Form2_Load(object sender, EventArgs e)
  • {
  • //instanciation ClsAfIdleInfos
  • IdleWatch = new InputInfos.ClsAfIdleInfos(20000, InputInfos.ClsAfIdleInfos.WatchingFrenquencyConstants.Fast);
  • //events
  • IdleWatch.CameBack += new InputInfos.EventHandler(IdleWatch_CameBack);
  • IdleWatch.IdleExpired += new InputInfos.EventHandler(IdleWatch_IdleExpired);
  • IdleWatch.IdleTick += new InputInfos.IdleTickEventHandler(IdleWatch_IdleTick);
  • }
  • private void IdleWatch_CameBack(object sender, EventArgs e)
  • {
  • Console.WriteLine("Activité détectée");
  • }
  • private void IdleWatch_IdleTick(object sender, InputInfos.IdleTickEventArgs e)
  • {
  • Console.WriteLine(String.Format("Utilisateur sans activité depuis {0} seconde(s)", e.ElapsedTime));
  • }
  • private void IdleWatch_IdleExpired(object sender, EventArgs e)
  • {
  • MessageBox.Show(String.Format("Fin de l'observation : {0} ms sans activité.", IdleWatch.GetIdleTimeSpan()));
  • IdleWatch.Dispose();
  • Application.Exit();
  • }
  • }
  • }
//Exemple d'utilisation
using System;
using System.Windows.Forms;

namespace IdleInput
{
    public partial class Form2 : Form
    {
        public Form2()
        {
            InitializeComponent();
        }



        private InputInfos.ClsAfIdleInfos IdleWatch = null;

        private void Form2_Load(object sender, EventArgs e)
        {
            //instanciation ClsAfIdleInfos 
            IdleWatch = new InputInfos.ClsAfIdleInfos(20000, InputInfos.ClsAfIdleInfos.WatchingFrenquencyConstants.Fast);

            //events
            IdleWatch.CameBack += new InputInfos.EventHandler(IdleWatch_CameBack);
            IdleWatch.IdleExpired += new InputInfos.EventHandler(IdleWatch_IdleExpired);
            IdleWatch.IdleTick += new InputInfos.IdleTickEventHandler(IdleWatch_IdleTick);
        }

        private void IdleWatch_CameBack(object sender, EventArgs e)
        {
            Console.WriteLine("Activité détectée");
        }
        private void IdleWatch_IdleTick(object sender, InputInfos.IdleTickEventArgs e)
        {
            Console.WriteLine(String.Format("Utilisateur sans activité depuis {0} seconde(s)", e.ElapsedTime));
        }
        private void IdleWatch_IdleExpired(object sender, EventArgs e)
        {
            MessageBox.Show(String.Format("Fin de l'observation : {0} ms sans activité.", IdleWatch.GetIdleTimeSpan()));
            IdleWatch.Dispose();
            Application.Exit();
        }
    }
}

 Conclusion

Classe faite suite à une discussion sur VbFrance
ceci est ma première source CSharp aussi toute critique (expliquée) est la bienvenue ;)

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

11 avril 2010 00:54:33 :
zip

 Sources de la même categorie

Source avec Zip Source avec une capture Source .NET (Dotnet) GETSYSTEMTIME ET SETSYSTEMTIME par Arnotic
Source avec Zip Source avec une capture Source .NET (Dotnet) [SILVERLIGHT] UN GÉNÉRATEUR INTERACTIF D'ARBRES DE HUFFMAN par loudadyassine
Source avec Zip Source avec une capture Source .NET (Dotnet) UTILISATION DE L'API VIRTUAL DISK IMAGE DE WINDOWS 7 par Willi
Source avec Zip Source .NET (Dotnet) CHESS GAME CORE - LIBRAIRIE JEU D'ÉCHEC EN C# par Bidou
Source .NET (Dotnet) CHANGER LA RESOLUTION DE VOTRE ECRAN, UTILISATION DES API WI... par mechtaly

 Sources en rapport avec celle ci

Source avec une capture PROTÉGER UNE APPLI PAR MOT DE PASSE (C#) par guiguizeitzt
Source avec Zip Source avec une capture Source .NET (Dotnet) [.NET3] WF - EXEMPLE D'ACTIVITÉS PARALLÈLES par Willi
Source avec Zip Source .NET (Dotnet) BOITE DE DIALOGUE : SÉLECTIONNER (RECHERCHER) DES UTILISATEU... par ShareVB
Source avec Zip Source .NET (Dotnet) DPAPI : PROTECTION DES DONNÉES PAR UTILISATEUR OU MACHINE par Crazyht
Source .NET (Dotnet) LISTER LES GROUPES AUQUELS APPARTIENT UN UTILISATEUR (WINNT ... par coq

Commentaires et avis

Commentaire de Djodjoman le 22/04/2010 22:27:31 9/10

Bien codé et commenté, merci bien :)

Comme j'ai passé un peu de temps à refaire l'exemple présent dans la classe pour une utilisation WPF, je la dispose ici pour ceux que ça intéresse :

using System;
using System.Threading;
using System.ComponentModel;
using System.Windows.Threading;

namespace IdleInput
{
/// <summary>
/// Interaction logic for Window1.xaml
/// </summary>
public partial class Window1 : Window
{
private InputInfos.ClsAfIdleInfos IdleWatch = null;

private BackgroundWorker backgroundWorker1 = new BackgroundWorker();

#region "Thread pour Label"
private string mThreadText = string.Empty;

delegate void SetTextCallback(string text);
private void SetText(string sText)
{
if (richTextBox1.Dispatcher.CheckAccess())
{
// The calling thread owns the dispatcher, and hence the UI element
richTextBox1.AppendText(sText);
}
else
{
// Invokation required
SetTextCallback d = new SetTextCallback(SetText);
richTextBox1.Dispatcher.Invoke(d, new object[] { sText });
}
}
private void SetThreadText(string sText)
{
mThreadText = sText;
while (backgroundWorker1.IsBusy)
{
// Remplace Application.DoEvents();
Application.Current.Dispatcher.Invoke(
System.Windows.Threading.DispatcherPriority.Background,
new ThreadStart(delegate { })
);
}

backgroundWorker1.RunWorkerAsync();
}
#endregion

public Window1()
{
InitializeComponent();

//instanciation ClsAfIdleInfos
IdleWatch = new InputInfos.ClsAfIdleInfos(20000, InputInfos.ClsAfIdleInfos.WatchingFrenquencyConstants.Fast);

//events
IdleWatch.CameBack += new InputInfos.EventHandler(IdleWatch_CameBack);
IdleWatch.IdleExpired += new InputInfos.EventHandler(IdleWatch_IdleExpired);
IdleWatch.IdleTick += new InputInfos.IdleTickEventHandler(IdleWatch_IdleTick);

//backgroundWorker event
backgroundWorker1.RunWorkerCompleted += new RunWorkerCompletedEventHandler(backgroundWorker1_RunWorkerCompleted);
}

private void IdleWatch_CameBack(object sender, EventArgs e)
{
SetThreadText("Activité détectée");
}
private void IdleWatch_IdleTick(object sender, InputInfos.IdleTickEventArgs e)
{
SetThreadText(String.Format("Utilisateur sans activité depuis {0} seconde(s)", e.ElapsedTime));
}
private void IdleWatch_IdleExpired(object sender, EventArgs e)
{
MessageBox.Show(String.Format("Fin de l'observation : {0} ms sans activité.", IdleWatch.GetIdleTimeSpan()));
IdleWatch.Dispose();
}

private void backgroundWorker1_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
this.SetText(mThreadText);
}
}
}

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Recherche du nom d'utilisateur dans l'entête HTTP [ par projetbts ] Bonjour,Je tente de récupérer le nom d'utilisateur qui tente une connection sur mon serveur HTTP. Pour cela, je récupére les entêtes HTTP fourni dans Problemes de droit en tant qu'utilisateur [ par marshallmatter ] MarshallMatterSalut,je suis sur mon compte et achaque fois que je veux debugger, j ai un message d'erreur me disant qu'il fat que je sois dans le 'deb Récupérer la valeur d'un TextField HTML [ par giill ] Bonjour,J'ai un WebForm avec des TextField HTML. L'utilisateur doit saisir ces textfield, puis clique sur un bouton Enregistrer (code événement en asp Datagrid et impression [ par space ] J'ai l'impression que mon message a etet efface si cela est veuillez svp m'envoyer un mail merci:).Sinon , le probleme en deux parties :1/ Je désire q Afficher une fenêtre de saisie utilisateur [ par Morpheus51Neo ] Bonjour à tous,Voici mon problème. C'est un truc tout bête que je n'arrive pas à trouver!Quelle fonction me permet d'afficher une petite fenêtre dans Changement d'utisateur Windows [ par MaRsIgLiA ] Bonjourno !!vlà j'ai un ptit soucis, sur une application windows développé en C#.La connection se fait via les parametres utilisateur de windows, et i authentification utilisateur base de données Access en c# [ par liliemumue ] BonjourJe ne connais rien au base de données et la j'avoue que je n'y arrive pas.Deja en premier lieu j'ai cree une base access avec plusieurs tables, Recuperer l'adresse IP d'un utilisateur distant [ par eRRaTuM ] Bijour,Je cherche une methode pour que je puisse recuperer l'adresse IP d'un remote user, pour pouvoir faire des statistiques, je sais que je dois uti Diggers II [ par ZogStriP ] Bonjour tout les coders .Net !J'ai deux questions à poser :J'aimerais réaliser un jeu du même type, à savoir faire un jeu dans lequel des robots (qui Lien vers site internet [ par giorgio08 ] Bonjour a tous, j'aurais voulu savoir comment faire pour créer un lien vers un site internet, j ai l'adresse et je voudrais que quand l'utilisateur ap


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,952 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales