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.
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.
- 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
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.
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!
16yrs of GUI programming experience gained at: (most recent first) BlackBall, Veritas, Seagate Software, Arcada, Stac, Mountain, and Emerald Systems.
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.