Shell Messages and Notifications

This section describes the Windows Shell messages and notifications.

In this section

Topic Description
ABM_ACTIVATE
Notifies the system that an appbar has been activated. An appbar should call this message in response to the WM_ACTIVATE message.
ABM_GETAUTOHIDEBAR
Retrieves the handle to the autohide appbar associated with an edge of the screen. If the system has multiple monitors, the monitor that contains the primary taskbar is used.
ABM_GETAUTOHIDEBAREX
Retrieves the handle to the autohide appbar associated with an edge of the screen. This message extends ABM_GETAUTOHIDEBAR by enabling you to specify a particular monitor, for use in multiple monitor situations.
ABM_GETSTATE
Retrieves the autohide and always-on-top states of the Windows taskbar.
ABM_GETTASKBARPOS
Retrieves the bounding rectangle of the Windows taskbar.
ABM_NEW
Registers a new appbar and specifies the message identifier that the system should use to send it notification messages. An appbar should send this message before sending any other appbar messages.
ABM_QUERYPOS
Requests a size and screen position for an appbar. When the request is made, the message proposes a screen edge and a bounding rectangle for the appbar. The system adjusts the bounding rectangle so that the appbar does not interfere with the Windows taskbar or any other appbars.
ABM_REMOVE
Unregisters an appbar by removing it from the system's internal list. The system no longer sends notification messages to the appbar or prevents other applications from using the screen area used by the appbar.
ABM_SETAUTOHIDEBAR
Registers or unregisters an autohide appbar for a given edge of the screen. If the system has multiple monitors, the monitor that contains the primary taskbar is used.
ABM_SETAUTOHIDEBAREX
Registers or unregisters an autohide appbar for a given edge of the screen. This message extends ABM_SETAUTOHIDEBAR by enabling you to specify a particular monitor, for use in multiple monitor situations.
ABM_SETPOS
Sets the size and screen position of an appbar. The message specifies a screen edge and the bounding rectangle for the appbar. The system may adjust the bounding rectangle so that the appbar does not interfere with the Windows taskbar or any other appbars.
ABM_SETSTATE
Sets the autohide and always-on-top states of the Windows taskbar.
ABM_WINDOWPOSCHANGED
Notifies the system when an appbar's position has changed. An appbar should call this message in response to the WM_WINDOWPOSCHANGED message.
ABN_FULLSCREENAPP
Notifies an appbar when a full-screen application is opening or closing. This notification is sent in the form of an application-defined message that is set by the ABM_NEW message.
ABN_POSCHANGED
Notifies an appbar when an event has occurred that may affect the appbar's size and position. Events include changes in the taskbar's size, position, and visibility state, as well as the addition, removal, or resizing of another appbar on the same side of the screen.
ABN_STATECHANGE
Notifies an appbar that the taskbar's autohide or always-on-top state has changed—that is, the user has selected or cleared the "Always on top" or "Auto hide" check box on the taskbar's property sheet.
ABN_WINDOWARRANGE
Notifies an appbar that the user has selected the Cascade, Tile Horizontally, or Tile Vertically command from the taskbar's shortcut menu.
CPL_DBLCLK
Sent to the CPlApplet function of a Control Panel application when the user double-clicks the icon of a dialog box supported by the application.
CPL_EXIT
Sent once to the CPlApplet function of a Control Panel application before the DLL containing the Control Panel application is released.
CPL_GETCOUNT
Sent to the CPlApplet function of a Control Panel application to retrieve the number of dialog boxes supported by the application.
CPL_INIT
Sent to the CPlApplet function of a Control Panel application to prompt it to perform global initialization, especially memory allocation.
CPL_INQUIRE
Sent to the CPlApplet function of a Control Panel application to request information about a dialog box that the application supports.
CPL_NEWINQUIRE
Sent to the CPlApplet function of a Control Panel application to request information about a dialog box that the application supports.
CPL_SELECT
CPL_STARTWPARMS
Sent to notify CPlApplet that the user has chosen the icon associated with a given dialog box. CPlApplet should display the corresponding dialog box and carry out any user-specified tasks.
CPL_STOP
Sent to the CPlApplet function of a Control Panel application when the controlling application of the Control Panel closes. The controlling application sends the message once for each dialog box that the application supports.
DDWM_UPDATEWINDOW
Instructs a drop image window to update using new DROPDESCRIPTION information.
DFM_GETDEFSTATICID
Sent by the default context menu implementation during creation, specifying the default menu command and allowing an alternate choice to be made. Used by LPFNDFMCALLBACK.
DFM_GETHELPTEXT
Allows the callback object to specify a help text string.
DFM_GETHELPTEXTW
Allows the callback object to specify a help text string.
DFM_GETVERB
Sent by the default context menu implementation to get the verb for the given command ID in the context menu.
DFM_INVOKECOMMAND
Sent by the default context menu implementation to request the callback function that handles the menu (LPFNDFMCALLBACK) to invoke a menu command.
DFM_INVOKECOMMANDEX
Sent by the default context menu implementation to request LPFNDFMCALLBACK to invoke an extended menu command.
DFM_MAPCOMMANDNAME
Sent by the default context menu implementation to assign a name to a menu command.
DFM_MERGECONTEXTMENU
Allows the callback to add items to the menu.
DFM_MERGECONTEXTMENU_BOTTOM
Allows the callback to add items to the bottom of the extended menu.
DFM_MERGECONTEXTMENU_TOP
Allows the callback to add items to the top of the extended menu.
DFM_MODIFYQCMFLAGS
Allows the callback to modify the CFM_XXX values passed to IContextMenu::QueryContextMenu.
DFM_VALIDATECMD
Sent to verify the existence of a menu command.
DFM_WM_DRAWITEM
Sent to the parent window of an owner-drawn control or menu when a visual aspect of the control or menu has changed.
DFM_WM_INITMENUPOPUP
Sent when a drop-down menu or submenu is about to become active. This allows an application to modify the menu before it is displayed, without changing the entire menu.
DFM_WM_MEASUREITEM
Sent to the owner window of a control or menu item when the control or menu is created.
FM_GETDRIVEINFO
Sent by a File Manager extension to retrieve drive information from the active File Manager window.
FM_GETFILESEL
Sent by a File Manager extension to retrieve information about a selected file from the active File Manager window (either the directory window or the Search Results window).
FM_GETFILESELLFN
Sent by a File Manager extension to retrieve information about a selected file from the active File Manager window (either the directory window or the Search Results window). The selected file can have a long file name.
FM_GETFOCUS
Sent by a File Manager extension to retrieve the type of File Manager window that has the input focus.
FM_GETSELCOUNT
Sent by a File Manager extension to retrieve a count of the selected files in the active File Manager window (either the directory window or the Search Results window).
FM_GETSELCOUNTLFN
Sent by a File Manager extension to retrieve the number of selected files in the active File Manager window (either the directory window or the Search Results window). The count includes files that have long file names.
FM_REFRESH_WINDOWS
Sent by a File Manager extension to cause File Manager to repaint either its active window or all of its windows.
FM_RELOAD_EXTENSIONS
Sent by a File Manager extension (or another application) to cause File Manager to reload all extension DLLs listed in the [AddOns] section of the Winfile.ini file.
FMEVENT_HELPMENUITEM
Sent to a File Manager extension DLL procedure when the user presses F1 on a menu or toolbar command item. The extension should call WinHelp, with that function's hwnd parameter set to the value of the extension's hwnd parameter.
FMEVENT_HELPSTRING
Sent to a File Manager extension DLL procedure when File Manager wants a Help string for a menu or toolbar command item.
FMEVENT_INITMENU
Sent to an extension DLL when the user selects the menu for the extension from the File Manager menu bar. The extension can use this notification to initialize menu items.
FMEVENT_LOAD
Sent to an extension DLL when File Manager is loading the DLL.
FMEVENT_SELCHANGE
Sent to an extension DLL when the user selects a file name in the File Manager directory window or Search Results window.
FMEVENT_TOOLBARLOAD
Sent to an extension DLL when File Manager is loading its toolbar. This message allows an extension DLL to add a button to the File Manager toolbar.
FMEVENT_UNLOAD
Sent to an extension DLL when File Manager is unloading the DLL.
FMEVENT_USER_REFRESH
Sent to an extension DLL when the user chooses the Refresh command from the View menu in File Manager. The extension can use this notification to update its menu.
NCM_DISPLAYERRORTIP
Displays an error message in the balloon tip associated with the network address control.
NCM_GETADDRESS
Indicates whether a network address conforms to a specified type and format.
NCM_GETALLOWTYPE
Retrieves the network address types that a specified network address control accepts.
NCM_SETALLOWTYPE
Sets the network address types that a specified network address control accepts.
SFVM_ADDOBJECT
Adds an object to the Shell view. Used by SHShellFolderView_Message.
SFVM_ADDPROPERTYPAGES
Allows the callback object to provide a page to add to the Properties property sheet of the selected object. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_BACKGROUNDENUM
Allows the callback object to request enumeration on a background thread. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_BACKGROUNDENUMDONE
Notifies the callback object that background enumeration is complete. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_COLUMNCLICK
Notifies the callback object that the user has clicked a column header to sort the list of objects in the folder view. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_DEFITEMCOUNT
Allows the callback object to specify the number of items in the folder view. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_DEFVIEWMODE
Allows the callback object to specify the view mode. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_FSNOTIFY
Notifies the callback object that an event has taken place that affects one of its items. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_GETANIMATION
Allows the callback object to specify that an animation be displayed while items are enumerated on a background thread. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_GETBUTTONINFO
Allows the callback object to add buttons to the toolbar. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_GETBUTTONS
Allows the callback object to specify the buttons to be added to the toolbar. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_GETHELPTEXT
Allows the callback object to specify a help text string for menu items or toolbar buttons. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_GETHELPTOPIC
Allows the callback object to specify an HTML Help file and a topic within it. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_GETNOTIFY
Notification sent to the view callback object to specify the locations and events that should be registered for change notification events. Once they are registered, when a change occurs in on of these locations or events, the view callback object is notified. These events are sent to the view callback through SFVM_FSNOTIFY and are then handled by the view.
SFVM_GETSELECTEDOBJECTS
Retrieves an array of pointers to item identifier lists (PIDLs) for all selected objects. Used by SHShellFolderView_Message.
SFVM_GETSORTDEFAULTS
Allows the callback object to specify a default sorting parameter. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_GETTOOLTIPTEXT
Allows the callback object to specify a tooltip text string for menu items or toolbar buttons. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_INITMENUPOPUP
Allows the callback object to modify a Windows Explorer pop-up menu before it is displayed. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_INVOKECOMMAND
Notifies the callback object that one of its toolbar or menu commands has been invoked by the user. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_MERGEMENU
Allows the callback object to merge menu items into the Windows Explorer menus. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_REARRANGE
Notifies the IShellView to rearrange its items. Used by SHShellFolderView_Message.
SFVM_REMOVEOBJECT
Removes an object from the shell view. Used by SHShellFolderView_Message.
SFVM_SETCLIPBOARD
Notifies the IShellView when one of its objects is placed on the Clipboard as a result of a menu command. Used by SHShellFolderView_Message.
SFVM_SETITEMPOS
Sets the position of an item in the Shell view. Used by SHShellFolderView_Message.
SFVM_SETPOINTS
Sets the points of the currently selected objects to the data object on Copy and Cut commands. Used by SHShellFolderView_Message.
SFVM_SIZE
Notifies the callback object that the folder view has been resized. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_UNMERGEMENU
Notifies the callback object that a menu is being removed. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_UPDATEOBJECT
Updates an object by passing a pointer to an array of two PIDLs. Used by SHShellFolderView_Message.
SFVM_UPDATESTATUSBAR
Notifies the callback object that the status bar is being updated. Used by IShellFolderViewCB::MessageSFVCB.
SFVM_WINDOWCREATED
Notifies the callback object that the folder view window is being created. Used by IShellFolderViewCB::MessageSFVCB.
SMC_CHEVRONEXPAND
The user has clicked a chevron to expand the item specified by the accompanying SMDATA structure.
SMC_CHEVRONGETTIP
Requests the title and text for a chevron infotip for the item specified by the accompanying SMDATA structure.
SMC_CREATE
Notifies you that a menu band has been created.
SMC_DEFAULTICON
Return the default icon for the item specified by the accompanying SMDATA structure.
SMC_DEMOTE
Demote the item specified by the accompanying SMDATA structure.
SMC_DISPLAYCHEVRONTIP
Notifies you that an infotip is about to be displayed for the chevron associated with the item specified by the accompanying SMDATA structure.
SMC_EXITMENU
Notifies you that the menu is collapsing.
SMC_GETINFO
Requests information about a regular menu item.
SMC_GETOBJECT
Requests a pointer to a specified object.
SMC_GETSFINFO
Requests information about a Shell folder menu item.
SMC_GETSFOBJECT
Requests a pointer to a specified object.
SMC_INITMENU
Notifies you to initialize the menu band.
SMC_NEWITEM
Notifies you of a new item, as specified by the accompanying SMDATA structure.
SMC_PROMOTE
Promote the item specified by the accompanying SMDATA structure.
SMC_REFRESH
Sends notification that the menus have completely refreshed and you can reset your state.
SMC_SETSFOBJECT
Notifies you to save the passed object.
SMC_SFDDRESTRICTED
Requests whether it is acceptable to drop a data object on the item specified by the accompanying SMDATA structure.
SMC_SFEXEC
Execute the Shell folder item specified in the accompanying SMDATA structure.
SMC_SFSELECTITEM
The user has selected the item specified by the accompanying SMDATA structure.
SMC_SHCHANGENOTIFY
Notifies you that a change has taken place.
WM_CPL_LAUNCH
This message is not supported.
WM_CPL_LAUNCHED
This message is not supported.
WM_DROPFILES
Sent when the user drops a file on the window of an application that has registered itself as a recipient of dropped files.
WM_HELP
Indicates that the user pressed the F1 key. If a menu is active when F1 is pressed, WM_HELP is sent to the window associated with the menu; otherwise, WM_HELP is sent to the window that has the keyboard focus. If no window has the keyboard focus, WM_HELP is sent to the currently active window.
WM_TCARD
Sent to an application that has initiated a training card with Windows Help. The message informs the application when the user clicks an authorable button. An application initiates a training card by specifying the HELP_TCARD command in a call to the WinHelp function.