当前位置:首页 科普知识 CallNextHookEx

CallNextHookEx

发布时间:2023-09-06 19:11:19

CallNextHookEx是一种函数,可以将钩子信息传递到当前钩子链中的下一个子程,一个钩子程序可以调用这个函数之前或之后处理钩子信息。

CallNextHookEx详细介绍

CallNextHookEx是一种函数,可以将钩子信息传递到当前钩子链中的下一个子程,一个钩子程序可以调用这个函数之前或之后处理钩子信息。

CallNextHookEx

CallNextHookEx函数信息

CallNextHookEx函数功能

将钩子信息传递到当前钩子链中的下一个子程,一个钩子程序可以调用这个函数之前或之后处理钩子信息

CallNextHookEx函数原型

LRESULT WINAPI CallNextHookEx( _In_opt_ HHOOK hhk, _In_ int nCode, _In_ WPARAM wParam, _In_ LPARAM lParam);

CallNextHookEx参数

1. hhk

说明:当前钩子的句柄

类型:HHOOK

此参数将被忽略。

2. nCode

说明:钩子代码; 就是给下一个钩子要交待的

类型:INT

钩传递给当前Hook过程的代码。下一个钩子程序使用此代码,以确定如何处理钩的信息。

3. wParam

说明:要传递的参数; 由钩子类型决定是什么参数

类型:WPARAM

wParam参数值传递给当前Hook过程。此参数的含义取决于当前的钩链与钩的类型。

4. lParam

说明:要传递的参数; 由钩子类型决定是什么参数

类型:LPARAM

lParam的值传递给当前Hook过程。此参数的含义取决于当前的钩链与钩的类型。

CallNextHookEx返回值

1. 类型:LRESULT

2. 返回这个值链中的下一个钩子程序。当前Hook过程也必须返回该值。返回值的含义取决于钩型。有关详细信息,请参阅个人钩子程序的描述

CallNextHookEx其它资料

速查:Windows 2000及更高版本、Windows Server 2000及更高版本

头文件:winuser.h

库文件:user32.lib;

Unicode:在 Windows NT上实现为 Unicode和 ANSI两种版本。

CallNextHookExC#声明

static extern IntPtr CallNextHookEx(IntPtr hhk, int nCode, IntPtr wParam,IntPtr lParam);

// 使用LowLevelKeyboardProc重载(键盘钩子)

CallNextHookEx

static extern IntPtr CallNextHookEx(IntPtr hhk, int nCode, WM wParam, KBDLLHOOKSTRUCT lParam);

// 使用LowLevelMouseProc重载(鼠标钩子)

static extern IntPtr CallNextHookEx(IntPtr hhk, int nCode, WM wParam, MSLLHOOKSTRUCT lParam);

CallNextHookExVB.NET声明

<Dllimport("user32.dll")> _

Private Shared Function CallNextHookEx(ByVal hhk As IntPtr, ByVal nCode As Integer, ByVal wParam As IntPtr, ByVal lParam As IntPtr) As IntPtr

End Function

' 使用LowLevelKeyboardProc重载(键盘钩子)

<Dllimport("user32.dll")> _

Private Shared Function CallNextHookEx(ByVal hhk As IntPtr, ByVal nCode As Integer, ByVal wParam As WindowsMessages, <()> ByVal lParam As KBDLLHOOKSTRUCT) As IntPtr

End Function

' 使用LowLevelMouseProc重载(鼠标钩子)

<Dllimport("user32.dll")> _

Private Shared Function CallNextHookEx(ByVal hhk As IntPtr, ByVal nCode As Integer, ByVal wParam As WindowsMessages, <()> ByVal lParam As MSLLHOOKSTRUCT) As IntPtr

End Function

CallNextHookExVB声明

Public Declare Function CallNextHookEx Lib "user32" _

(ByVal hHook As Long, _

ByVal ncode As Long, _

ByVal wParam As WindowsMessages, _

lParam As Any) As Long

' 使用LowLevelKeyboardProc重载(键盘钩子)

Public Declare Function CallNextHookExKbd Lib "user32" Alias "CallNextHookEx" _

(ByVal hHook As Long, _

ByVal ncode As Long, _

ByVal wParam As WindowsMessages, _

lParam As KBDLLHOOKSTRUCT) As Long

' 使用LowLevelMouseProc重载(鼠标钩子)

Public Declare Function CallNextHookExMse Lib "user32" Alias "CallNextHookEx" _

CallNextHookEx

(ByVal hHook As Long, _

ByVal ncode As Long, _

ByVal wParam As WindowsMessages, _

lParam As MSLLHOOKSTRUCT) As Long

温馨提示:
本文【CallNextHookEx】由作者 爱百科 转载提供。 该文观点仅代表作者本人, 自学教育网 信息发布平台,仅提供信息存储空间服务, 若存在侵权问题,请及时联系管理员或作者进行删除。
(c)2008-2025 自学教育网 All Rights Reserved 汕头市灵创科技有限公司
粤ICP备2024240640号-6