Click here to Skip to main content
15,887,175 members
Articles / Desktop Programming / MFC
Article

InstantOff

Rate me:
Please Sign up or sign in to vote.
3.29/5 (7 votes)
14 Apr 20022 min read 119.7K   1.7K   32   30
A system tray utility that will Shutdown, Restart, LogOff, Hibernate or Standby your system with just a double click.

Instant Off Menu

Introduction

This is a simple system tray utility which allows you to quickly Shutdown, Restart, Log Off, Hibernate or Standby just with a mouse click. As you can see from the screen shot, it will allow you to choose any action from the Context menu or execute the default menu action by just double clicking the menu item. This is very handy compared to the usual way of Start->ShutDown and then choose the action.

Features

  • Fast and compact. The executable is only 35 KB. It is packed with UPX. Original file size is only 72 KB.
  • Easy to customize. The user can select the menu items which should appear in the Context menu and the Default menu item. The action associated with this default menu item will be processed upon double clicking the System Tray Icon.
  • The user can also decide whether to force the system to undergo the actions displayed in the context menu. In this case the system will not wait for any programs to close and you will lose the unsaved data. But this useful when you get stuck with some program.
  • It will work on any platform, from Windows 95 to Windows XP Pro and Home Edition.

Code Details

This version of the Application was written using WTL 7.0 library. It uses no WTL 7.0 specific features, and it can be compiled with WTL 3.1 or 3.0. Earlier versions of this Application was written using API. But I think that an Object Orient Approach would be far better in this kind of situations.

For system Shutdown, Restart and Log Off ExitWindowsEx API is used. For Hibernation and Standby modes SetSystemPowerState API is used. The program stores its settings in file instant.ini instead of using System Registry.

Instant Off Options

I have used a Tree Control which allows the user to select the default menu action and Items to be displayed in the context menu. I have derived a new class to achieve Internet Explorer like Options Dialog. You must choose at least one menu item to be displayed in the context menu and one default menu item. You van also specify whether to force the system to undergo the clicked action. In the Settings category it is shown whether to force the system shutdown, but it will work for all the five menu items.

Last words ...

I have written all the components required for this application specifically for this Application. If you need to use any of the components you have to Add/Remove some code to/from the existing code. The code is not commented. But functions names will tell you what I did. I think it can be easily understood. The settings saving could be done in registry. I have used MFC's VERIFY to catch bugs very easily. And it worked for me very well and I could catch some bugs with that Tree Control. Expect Bugs...

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


Written By
Exciton Technologies LLP
India India
https://exciton.net

Comments and Discussions

 
GeneralWow! Pin
Daniel Turini15-Apr-02 7:18
Daniel Turini15-Apr-02 7:18 
GeneralRe: Wow! Pin
Nish Nishant15-Apr-02 7:26
sitebuilderNish Nishant15-Apr-02 7:26 
GeneralRe: Wow! Pin
Derick Cyril Thomas16-Apr-02 15:16
Derick Cyril Thomas16-Apr-02 15:16 
GeneralRe: Wow! Pin
Xalon29-Apr-02 0:56
Xalon29-Apr-02 0:56 
GeneralRe: Wow! Pin
19-Jul-02 6:04
suss19-Jul-02 6:04 

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.