Introduction
Sometimes I find I want to hide an application that is running in the background to stop me closing it, and to stop it appearing on the task list. How many times have you started a lengthy download, left it running in the background, and then closed the application accidentally while 'cleaning up' your desktop? This utility allows you to hide, and unhide any 'top level' windows (that is, any windows whose parent is the desktop).
On running the utility, an icon will appear in your taskbar. Clicking or right-clicking on it will produce a menu, similar to the following:
This menu has two submenus that will list all of your top-level windows. Any window that is visible will be shown on the 'Hide Window' menu, while any window that is hidden will appear on the 'Show Window' menu. Clicking on a window name in either menu will toggle its visible state.
Normally the Windows system uses many hidden windows for such purposes as DDE message exchange etc. To avoid windows being listed in either of the lists you can add them to an 'exclusion' list. Double-clicking on the taskbar icon, or clicking and then clicking options, will open a dialog with a picker list allowing you to add or remove windows from the exclusion list. This list is then saved to your profile and used each time you run the utility. To exit the utility, click on Exit on the menu. That's all there is to it - have fun!
History
Originally from an electronics background, I moved into software in 1996, partly as a result of being made redundant, and partly because I was very much enjoying the small amount of coding (in-at-the-deep-end-C) that I had been doing!
I swiftly moved from C to C++, and learned MFC, and then went on to real-time C on Unix. After this I moved to the company for which I currently work, which specialises in Configuration Management software, and currently program mainly in C/C++, for Windows. I have been gradually moving their legacy C code over to use C++ (with STL, MFC, ATL, and WTL). I have pulled in other technologies (Java, C#, VB, COM, SOAP) where appropriate, especially when integrating with third-party products.
In addition to that, I have overseen the technical side of the company website (ASP, VBScript, JavaScript, HTML, CSS), and have also worked closely with colleagues working on other products (Web-based, C#, ASP.NET, SQL, etc).
For developing, I mainly use Visual Studio 2010, along with an in-house-designed editor based on Andrei Stcherbatchenko's
syntax parsing classes, and various (mostly freeware) tools. For website design, I use Dreaweaver CS3.
When not developing software, I enjoy listening to and playing music, playing electric and acoustic guitars and mandolin.