linux窗口消息全局hook,易语言通过消息全局钩子截获外部窗口消息

上节课视频教学我们封装了一个消息钩子的动态链接文件,这节课我们通过易语言主程序实现调用,从而对记事本外部窗口的的消息截获,换成我们的hook内容。首先我们封装一个开始截获和结束截获的方法。我们调用LoadLibraryA动态加载我们上节课封装的消息钩子动态链接文件msghook.dll

开始截获

.版本 2

.子程序 开始截获, 逻辑型

.参数 窗口句柄

.局部变量 hmod, 整数型

.局部变量 lpProc, 子程序指针

.局部变量 ThreadID, 整数型

.局部变量 hHook, 整数型

.如果真 (窗口句柄 = 0)

返回 (假)

.如果真结束

.如果真 (GetPropA (窗口句柄, #prop) ≠ 0)

' 不等于0说明已经加载过钩子了

返回 (假)

.如果真结束

' 第一步 获取 Hookdll的 句柄

hmod = LoadLibraryA (取运行目录 () + “\msghook.dll”)

' 第二步 获取GetMsgProc 这个回调函数的 指针

lpProc = GetProcAddress (hmod, “GetMsgProc”)

' 第三部 获取截获窗口的线程ID

ThreadID = GetWindowThreadProcessId (窗口句柄, 0)

' 给指定的窗口安装消息钩子,该窗口在收到postMessage的消息后会自动加载钩子函数所在的DLLmsghook.dll

hHook = SetWindowsHookExA (#WH_GETMESSAGE, lpProc, hmod, ThreadID)

' 释放dll

FreeLibrary (hmod)

' 开始给窗口发送消息,通知msghook.dll子类化窗口过程,并传递钩子句柄过去

PostMessageA (窗口句柄, #MyMsgClass, 1, hHook)

返回 (hHook ≠ 0)

结束截获

.版本 2

.子程序 结束截获, 逻辑型

.参数 窗口句柄, 整数型

.局部变量 hHOOK, 整数型

.如果 (窗口句柄 = 0)

返回 (假)

.否则

.如果结束

' 取回钩子的句柄

hHOOK = SendMessageA (窗口句柄, #MyMsgClassHook, 0, 0)

.如果真 (hHOOK = 0)

' 0说明窗口已经关闭了

返回 (真)

.如果真结束

' 通知窗口截获结束,恢复窗口过程

SendMessageA (窗口句柄, #MyMsgClass, 0, 0)

返回 (UnhookWindowsHookEx (hHOOK))

主程序调用开始截获

.版本 2

.程序集 窗口程序集_启动窗口

.子程序 _按钮1_被单击

.局部变量 hwnd

hwnd = 取指定窗口句柄 (“无标题 - 记事本”)

.如果真 (hwnd = 0)

信息框 (“请打开一个空白记事本”, 0, , )

返回 ()

.如果真结束

.如果真 (开始截获 (hwnd))

信息框 (“开始截获消息”, 0, , “成功”)

.如果真结束

.子程序 _按钮2_被单击

结束截获 (取指定窗口句柄 (“无标题 - 记事本”))

.子程序 取指定窗口句柄, 整数型

.参数 窗口标题, 文本型

返回 (FindWindowA (字符 (0), 窗口标题))

.子程序 __启动窗口_将被销毁

结束截获 (取指定窗口句柄 (“无标题 - 记事本”))

百度网盘链接:https://pan.baidu.com/s/158ikKVjIwaoF4438MG4fhA

提取码:加QQ群:521068947 群文件下载

资源教程交流①群:521068947

511遇见QQ:272586593

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
拼多多商家工作台是一个用于拼多多商家管理的平台,商家可以在这个工作台上进行商品管理、订单管理等操作。而hook消息监听和发送消息是指通过在拼多多工作台中嵌入的代码,对消息进行监听和发送。 首先,要实现hook消息监听,可以使用易语言编写的源码。在编写源码时,需要使用到易语言的一些基本函数和操作,如监听消息的函数和处理消息的函数等。 在监听消息的函数中,可以使用hook函数来对拼多多商家工作台中的消息进行监听。钩子函数是一种能够拦截特定消息的机制,当特定的消息触发时,会执行我们设定的回调函数。通过钩子函数,可以监听到拼多多工作台中的一些关键消息,如订单状态变化、商品上下架等消息。 然后,要实现发送消息功能,可以在相应的代码中编写发送消息的函数。通过该函数,可以向商家工作台发送消息,如订单状态的变更消息、商品上下架的通知等。可以将需要发送的消息内容封装成一个消息体,并调用相应的API来发送消息。 需要注意的是,为了保证代码的安全性和可靠性,我们在编写过程中需要遵循相关的规范和约束。同时,还需要经过测试和验证,确保代码能够正常运行,并且能够正确地监听和发送消息。 通过以上的步骤,就可以实现拼多多商家工作台的hook消息监听和发送消息的功能。这样,商家就可以在工作台上随时获取订单和商品的最新信息,并可以及时发送相关的消息进行通知和处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值