Guest User

Untitled

a guest
Jan 21st, 2019
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.68 KB | None | 0 0
  1. private void Form1_Load(object sender, EventArgs e)
  2. {
  3. IdleTimer.Tick += new EventHandler(IdleTimer_Tick);
  4. }
  5.  
  6. void Application_Idle(object sender, EventArgs e)
  7. {
  8. if (!IdleTimer.Enabled)
  9. {
  10. StartTimer();
  11. }
  12. }
  13.  
  14. private void StartTimer()
  15. {
  16. IdleTimer.Interval = (Int32)((60000.0D) * (0.2D));
  17. IdleTimer.Enabled = true;
  18. Debug.WriteLine("Timer Started : " + IdleTimer.Interval.ToString());
  19. IdleTimer.Start();
  20. }
  21.  
  22. void IdleTimer_Tick(object sender, EventArgs e)
  23. {
  24. IdleTimer.Enabled = false;
  25. // Some cleanup code
  26. // ....
  27. // ....
  28. Application.Exit(); // Or something like this
  29. }
  30.  
  31. private void Form1_MouseMove(object sender, MouseEventArgs e)
  32. {
  33. RestartTimer();
  34. }
  35.  
  36. private void Form1_KeyDown(object sender, KeyEventArgs e)
  37. {
  38. RestartTimer();
  39. }
  40.  
  41. private void StopTimer()
  42. {
  43. Debug.WriteLine("Stopping Timer.");
  44. IdleTimer.Enabled = false;
  45. IdleTimer.Stop();
  46. }
  47.  
  48. private void RestartTimer()
  49. {
  50. StopTimer();
  51. StartTimer();
  52. }
  53.  
  54. private void Dashboard_Load(object sender, EventArgs e)
  55. {
  56.  
  57. Application.Idle += new EventHandler(Application_Idle);
  58. this.KeyPreview = true;
  59. }
  60.  
  61. public static uint GetIdleTime()
  62. {
  63. LASTINPUTINFO LastUserAction = new LASTINPUTINFO();
  64. LastUserAction.cbSize =
  65. (uint)System.Runtime.InteropServices.Marshal.SizeOf(LastUserAction);
  66. GetLastInputInfo(ref LastUserAction);
  67. return ((uint)Environment.TickCount - LastUserAction.dwTime);
  68. }
  69.  
  70. timer1.Start();
  71.  
  72. private void timer1_Tick(object sender, EventArgs e)
  73. {
  74. if (GetIdleTime() > 1200000 ) // 20minutes
  75. Application.Exit();//For Example
  76. }
Add Comment
Please, Sign In to add comment