ShellProc挂接过程是一个应用程序定义或库定义的回调函数,shell应用程序用于从系统接收有用的通知。
LRESULT CALLBACK ShellProc(
INT 【NCODE】, | //钩子代码 |
WPARAM 【wParam中】, | //事件特定信息 |
LPARAM 【lParam的】 | //事件特定信息 |
); |
参数
【NCODE】
指定挂钩代码。此参数可以是以下值之一:
值 | 含义 |
HSHELL_ACTIVATESHELLWINDOW | 外壳应激活其主窗口。 |
HSHELL_GETMINRECT | 仅Windows 95:窗口正在最小化或最大化,系统需要窗口最小化矩形的坐标。【wParam中】参数包含窗口的句柄,【lParam的】参数包含接收坐标的RECT结构的地址。 |
HSHELL_LANGUAGE | 仅Windows 95:键盘语言已更改或新的键盘布局已加载。 |
HSHELL_REDRAW | 仅Windows 95:任务栏中的窗口标题已重绘。【wParam中】参数包含窗口的句柄。 |
HSHELL_TASKMAN | 仅Windows 95:用户已选择任务列表。【wParam中】参数未定义,应忽略。提供任务列表的shell应用程序应该返回TRUE,以防止Windows启动其任务列表。 |
HSHELL_WINDOWACTIVATED | 仅Windows 95:激活已更改为不同的顶层,未知的窗口。【wParam中】参数包含窗口的句柄。 |
HSHELL_WINDOWCREATED | 已创建顶层,未知的窗口。当系统调用ShellProc功能时,窗口就会存在。 |
HSHELL_WINDOWDESTROYED | 一个顶级的,未知的窗口即将被销毁。当系统调用ShellProc功能时,该窗口仍然存在。 |
如果【NCODE】小于零,挂钩过程必须将消息传递给CallNextHookEx函数,无需进一步处理,并返回CallNextHookEx返回的值。
【wParam中】
指定shell应用程序可能需要的其他信息。如果【NCODE】参数是HSHELL_ACTIVATESHELLWINDOW,则不使用【wParam中】参数。如果【NCODE】为HSHELL_WINDOWCREATED或HSHELL_WINDOWDESTROYED,则【wParam中】分别指定正在创建或销毁的窗口的句柄。
【lParam的】
Windows 95:
指定附加信息。确切的值取决于【NCODE】参数的值。如果【NCODE】为HSHELL_GETMINRECT,则【lParam的】为LPRECT。如果【NCODE】为HSHELL_WINDOWSACTIVATED,则【lParam的】为【fFullScreen】.如果【NCODE】为HSHELL_REDRAW,【lParam的】为【fNewFlash】.
Windows NT:
该参数必须为零。
返回值
返回值应为零。
备注
应用程序通过在调用SetWindowsHookEx函数中指定WH_SHELL钩子类型和挂钩过程的地址来安装挂钩过程。
ShellProc是应用程序定义或库定义的函数名称的占位符。
也可以看看