Relax your eyes

icon Tags de l'article : , ,

Avril 16, 2015
Hello les gens,

Comme beaucoup de développeurs, j'ai la mauvaise habitude de passer plusieurs heures sur le PC sans faire de pauses.

Le problème, c'est que mes yeux n'aiment vraiment pas, et qu'en plus les années passent, en plus ma myopie s'amplifie (et je suis sûr et certain que c'est à cause de mes trop longues sessions devant le PC).

Du coup, afin de me forcer à faire des pauses, j'ai décidé de développer un tout petit logiciel qui verrouille ma session 3 minutes toutes les heures. Ca peut sembler radical, mais c'est ce que j'ai trouvé de mieux. J'avais testé EyeDefender, plus complet, mais trop gentil (on appuie sur Echap et hop, la pause est terminée).

Le code source est disponible sur GitHub.

Et le zip est disponible ici.

L'application, ultra simpliste (pour le moment), ressemble à ça :



3 minutes avant la pause, elle affichera une infobulle d'alerte :



Et si vous êtes vraiment sur une tâche critique, vous pouvez décaler la pause de 3 minutes (mais une seule fois !) :



Enfin, vous pouvez la lancer avec l'argument -autostart pour qu'elle se lance automatiquement, ce qui peut être pratique si, comme moi, vous voulez la mettre au démarrage.

Bon dev et bonne journée à tous !

Afficher des bulles de notification dans la barre des tâches en C#

icon Tags de l'article : , ,

Avril 16, 2015
Hello,

Un besoin qui revient souvent en C#, pour des appli Winforms simples : pouvoir afficher des notifications dans la barre des tâches en C#.

Pour cela, j'utilise toujours la même méthode : un notifyIcon et l'appel à la méthode ShowBalloonTip :

this.notifyIconFormMain.Visible = true;
this.notifyIconFormMain.BalloonTipIcon = ToolTipIcon.Info;
this.notifyIconFormMain.BalloonTipTitle = "Relax your eyes";
this.notifyIconFormMain.BalloonTipText = string.Format("You will have to relax your eyes in {0} minutes.", minutes);
this.notifyIconFormMain.ShowBalloonTip(4); // 4 = le nombre de secondes d'affichage du message

Et voilà, une bulle apparaitra dans le coin de votre écran pour afficher votre message pendant 4 secondes !



Bon dev à tous !

Verrouiller une session en C#

icon Tags de l'article : , , ,

Avril 15, 2015
Hello,

Juste un mini article : comment verrouiller une session en C#.

La réponse est simple, à l'aide de ce petit morceau de code qui utilise user32.dll :

private const int WmSyscommand = 0x0112;
private const int ScMonitorpower = 0xF170;
private const int HwndBroadcast = 0xFFFF;
private const int ShutOffDisplay = 2;
[DllImport("user32.dll")]
private static extern void LockWorkStation();
[DllImport("user32.dll", SetLastError = true)]
private static extern bool PostMessage(IntPtr hWnd, uint msg, IntPtr wParam, IntPtr lParam);

Voilà, vous n'avez plus qu'à appeler la jolie méthode LockWorkStation qui s'occupera de verrouiller la session utilisateur ! Pensez juste à faire attention quand vous testez, car si vous mettez ça dans une boucle vous risquez d'être bloqué... [oui, ça sent le vécu]

Bon dev!

source