.版本 2.DLL命令 SetWindowsHookEx, 整数型, , "SetWindowsHookExA", , 建立钩子 .参数 idHook, 整数型 .参数 lpfn, 子程序指针 .参数 hmod, 整数型 .参数 dwThreadId, 整数型.DLL命令 CopyMemory, , , "RtlMoveMemory" .参数 Destination, 按键信息, 传址 .参数 Source, 整数型 .参数 Length, 整数型.DLL命令 CallNextHookEx, 整数型, , "CallNextHookEx" .参数 hhk, 整数型 .参数 nCode, 整数型 .参数 wParam, 整数型 .参数 lParam, 整数型.DLL命令 GetModuleHandle, 整数型, , "GetModuleHandleA" .参数 lpModuleName, 整数型.DLL命令 UnHookWindowsHookEx, 逻辑型, , "UnhookWindowsHookEx", , 卸载钩子 .参数 hhk, 整数型
.版本 2.数据类型 按键信息 .成员 message, 整数型 .成员 paramL, 整数型 .成员 paramH, 整数型 .成员 time, 整数型 .成员 hwnd, 整数型
.版本 2.支持库 eAPI.程序集 窗口程序集_启动窗口.程序集变量 钩子句柄, 整数型.子程序 __启动窗口_创建完毕.如果真 (钩子句柄 = 0) 钩子句柄 = SetWindowsHookEx (13, &钩子函数, GetModuleHandle (0), 0) .如果真 (钩子句柄 = 0) 输出调试文本 (“安装钩子失败!”) 返回 () .如果真结束.如果真结束.子程序 钩子函数, 整数型.参数 icode, 整数型.参数 wparam, 整数型.参数 lparam, 整数型.局部变量 按键信息, 按键信息.局部变量 局部, 整数型, 静态CopyMemory (按键信息, lparam, 28).如果 (按键信息.message = #回车键) ' 判断按下的是否回车键。 .如果真 (局部 ÷ 2 = 局部 \ 2) ' 如果不加这个判断,每次都会投递2次文本,因为按下和弹起算2次 文本_投递 (取鼠标所在窗口句柄 (), 尾巴内容编辑框.内容) .如果真结束 局部 = 局部 + 1.否则.如果结束返回 (CallNextHookEx (钩子句柄, icode, wparam, lparam)).子程序 __启动窗口_将被销毁UnHookWindowsHookEx (钩子句柄)