The ShellProc hook procedure is an application-defined or library-defined callback function a shell application uses to receive useful notifications from the system.
LRESULT CALLBACK ShellProc(
int nCode, | // hook code |
WPARAM wParam, | // event-specific information |
LPARAM lParam | // event-specific information |
); |
Parameters
nCode
Specifies the hook code. This parameter can be one of the following values:
Value | Meaning |
HSHELL_ACTIVATESHELLWINDOW | The shell should activate its main window. |
HSHELL_GETMINRECT | Windows 95 only: A window is being minimized or maximized and the system needs the coordinates of the minimized rectangle for the window. The wParam parameter contains the handle of the window, and the lParam parameter contains the address of a RECT structure that receives the coordinates. |
HSHELL_LANGUAGE | Windows 95 only: Keyboard language was changed or a new keyboard layout was loaded. |
HSHELL_REDRAW | Windows 95 only: The title of a window in the task bar has been redrawn. The wParam parameter contains the handle of the window. |
HSHELL_TASKMAN | Windows 95 only: The user has selected the task list. The wParam parameter is undefined and should be ignored. A shell application that provides a task list should return TRUE to prevent Windows from starting its task list. |
HSHELL_WINDOWACTIVATED | Windows 95 only: The activation has changed to a different top-level, unowned window. The wParam parameter contains the handle of the window. |
HSHELL_WINDOWCREATED | A top-level, unowned window has been created. The window exists when the system calls a ShellProc function. |
HSHELL_WINDOWDESTROYED | A top-level, unowned window is about to be destroyed. The window still exists when the system calls a ShellProc function. |
If nCode is less than zero, the hook procedure must pass the message to the CallNextHookEx function without further processing and should return the value returned by CallNextHookEx.
wParam
Specifies additional information the shell application may require. If the nCode parameter is HSHELL_ACTIVATESHELLWINDOW, the wParam parameter is not used. If nCode is HSHELL_WINDOWCREATED or HSHELL_WINDOWDESTROYED, wParam specifies the handle of the window being created or destroyed, respectively.
lParam
Windows 95:
Specifies additional information. The exact value depends on the value of the nCode parameter. If nCode is HSHELL_GETMINRECT, lParam is LPRECT. If nCode is HSHELL_WINDOWSACTIVATED, lParam is fFullScreen. If nCode is HSHELL_REDRAW, lParam is fNewFlash.
Windows NT:
This parameter must be zero.
Return Values
The return value should be zero.
Remarks
An application installs the hook procedure by specifying the WH_SHELL hook type and the address of the hook procedure in a call to the SetWindowsHookEx function.
ShellProc is a placeholder for the application-defined or library-defined function name.
See Also