Click here to Skip to main content
15,867,299 members
Articles / Programming Languages / C++

A user configurable "Idle Computer Notification" tool

Rate me:
Please Sign up or sign in to vote.
3.62/5 (7 votes)
21 Aug 2006CPOL2 min read 36.8K   415   15   3
This tool will let you know when your computer is idle/busy.

Sample Image - icn.png

Introduction

Ever notice how the audio for Windows startup plays at the beginning of login? Do you ever find yourself wishing it would play something *after* your computer has completed the startup sequence and all of your startup applications have settled down? Well, I do. I have four computers sitting in front of me, and I turn to another the moment one is too busy to deal with me, but have no way of really knowing if the first one is ready for me to come back to other than checking it over and over again while having the Taskman running so I see the CPU usage. With this tool, my computers let me know when they are ready for me. They tell me when they are done starting up, and they tell me when they are done with lengthy operations.

Demo Project

The demo project download is a quick way to take a look at the code if you are interested. Suggestions and comments are appreciated. The heart of the program is a thread proc in icn.cpp named MonitorThreadProc(). The CPU usage detection stuff was taken directly from 'Get CPU Usage with GetSystemTimes' by ejor.

Features

  • Fully featured install and uninstall
  • User configurable "idle" and "busy" CPU thresholds and durations
  • User configurable audio notification
  • Continuous monitoring mode
  • HTML style help file

Using ICN

During the setup process, you are given an opportunity to adjust the default settings. Do not be overly concerned about these during the initial setup as they will likely need adjusting for your particular Use Case. If you wish to be notified only when system startup has settled down, you should disable the "Monitor Continuously" option.

When the up (busy) state conditions are met, ICN will display a tool window that indicates the fact unless you have elected to not display the pop-up in the settings dialog. When the tool window is displayed, ICN will give you an audio indication when the computer has gone back to an idle (down) state unless you have elected to use the cancel button. The tool window also provides access to the settings application for convenient adjusting.

Upgrading and Uninstalling

When upgrading, it is necessary to restart Windows for the changes to take effect.

Summary

If I left out any details you think should be mentioned in the article, please let me know.

If you could take one last second to rate this article or even leave a comment, it would be much appreciated.

Thanks for reading!

Credits

History

  • 1.01 - June 30, 2006
    • Initial release.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Web Developer
United States United States
16yrs of GUI programming experience gained at: (most recent first) BlackBall, Veritas, Seagate Software, Arcada, Stac, Mountain, and Emerald Systems.

Languages/Scripting: C, C++, JAVA, BASIC, JAVASCRIPT, HTML, XML, PHP, and SQL

Tools: MS Visual Studio, MS Visual SourceSafe, CVS, PVCS, Bounds Checker, VMWare, ToDoList, InstallShield, and Office Applications

Libraries and API: RTL, STL, WIN32, MFC, ATL, .NET, ActiveX, DirectX, COM, DCOM, Shell Extensions, and Shell Namespaces

Strengths: Honest, communicative, keen eye for usability, good at estimating workload and completion dates, ready to take on grunt work, team player, experienced working with QA, localization, Tech Pubs, Sales, and Marketing teams.

Comments and Discussions

 
Generalemail notification Pin
squilliam16-Mar-10 13:33
squilliam16-Mar-10 13:33 
QuestionHow about making it into generic system load class... Pin
Defenestration6-Sep-06 19:04
Defenestration6-Sep-06 19:04 
AnswerRe: How about making it into generic system load class... Pin
Shaun Harrington7-Sep-06 5:23
Shaun Harrington7-Sep-06 5:23 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.