Click here to Skip to main content
15,867,453 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.4K   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

 
GeneralI have my won shutdown which is aesthetic and advanced then this ! Pin
sanjit_rath16-Jul-04 9:46
sanjit_rath16-Jul-04 9:46 
GeneralRe: I have my won shutdown which is aesthetic and advanced then this ! Pin
maplewang5-Jun-07 15:08
maplewang5-Jun-07 15:08 
GeneralSetting Hibernation as default fails Pin
Gil Yoder19-Mar-04 3:42
Gil Yoder19-Mar-04 3:42 
QuestionHow to capture Standby&Hiberation event? Pin
FrankJHTsai18-Feb-04 14:23
FrankJHTsai18-Feb-04 14:23 
AnswerRe: How to capture Standby&Hiberation event? Pin
madar123#27-Aug-07 0:34
madar123#27-Aug-07 0:34 
GeneralRestart without BIOS Power on self test Pin
Sadru4-Jun-03 19:39
Sadru4-Jun-03 19:39 
QuestionWhere is the Source code? Pin
JH200323-Mar-03 12:35
JH200323-Mar-03 12:35 
AnswerRe: Where is the Source code? Pin
Derick Cyril Thomas28-Mar-03 14:33
Derick Cyril Thomas28-Mar-03 14:33 
AnswerRe: Where is the Source code? Pin
x_tao198420-Sep-09 17:47
x_tao198420-Sep-09 17:47 
QuestionHow to shutdown a drive ? Pin
_Axl_6-Dec-02 14:44
_Axl_6-Dec-02 14:44 
General? Catch shutdown Pin
Synetech19-Aug-02 6:39
Synetech19-Aug-02 6:39 
GeneralRe: ? Catch shutdown Pin
Ravi Bhavnani19-Aug-02 7:14
professionalRavi Bhavnani19-Aug-02 7:14 
GeneralRe: ? Catch shutdown Pin
Brian Delahunty14-May-03 10:37
Brian Delahunty14-May-03 10:37 
GeneralRe: ? Catch shutdown Pin
Anonymous22-Oct-04 5:10
Anonymous22-Oct-04 5:10 
QuestionHow can I tell when an app has ended? Pin
Paresh Solanki21-Jun-02 4:38
Paresh Solanki21-Jun-02 4:38 
AnswerRe: How can I tell when an app has ended? Pin
Carlos Antollini21-Jun-02 5:16
Carlos Antollini21-Jun-02 5:16 
QuestionCan not comiple the source code Pin
21-Jun-02 4:29
suss21-Jun-02 4:29 
AnswerRe: Can not comiple the source code Pin
Anonymous14-Aug-02 4:31
Anonymous14-Aug-02 4:31 
AnswerRe: Can not comiple the source code Pin
Derick Cyril Thomas14-Aug-02 21:12
Derick Cyril Thomas14-Aug-02 21:12 
GeneralLock PC support Pin
mr. Vitaliy A. Genkin22-May-02 0:56
mr. Vitaliy A. Genkin22-May-02 0:56 
GeneralRe: Lock PC support Pin
3-Jul-02 1:58
suss3-Jul-02 1:58 
GeneralForce System Shutdown... Pin
Mike Nordell15-Apr-02 12:25
Mike Nordell15-Apr-02 12:25 
GeneralRe: Force System Shutdown... Pin
Derick Cyril Thomas16-Apr-02 15:24
Derick Cyril Thomas16-Apr-02 15:24 
"Forces processes to terminate. When this flag is set, Windows does not send the messages WM_QUERYENDSESSION and WM_ENDSESSION to the applications currently running in the system. This can cause the applications to lose data." -MSDN

When you shutdown , logoff or do anything like that, windows askes active programs to close and save the data. When you use the force parameter, it won't do this.Confused | :confused:
GeneralRe: Force System Shutdown... Pin
22-Apr-02 10:44
suss22-Apr-02 10:44 
GeneralRe: Force System Shutdown... Pin
Derick Cyril Thomas22-Apr-02 23:30
Derick Cyril Thomas22-Apr-02 23:30 

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.