求 拦截窗体消息的钩子(hook)(50分)

zhouxu21 2005-07-23 07:45:05
我用vb 控制别的程序,需要拦截窗体的消息,比如按钮按下的消息,
...全文
330 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhouxu21 2005-07-24
  • 打赏
  • 举报
回复
谢谢,可现在学c来不及,谁有现成的dll啊?大家帮忙找一下啊,来者有分,只要问题不解决就不结帖。要不我去c++论坛看看?
嗷嗷叫的老马 2005-07-23
  • 打赏
  • 举报
回复
子类是不可以拦截别的程序的消息的吧?

你要拦截指定进程的消息,我想可能只能用DLL.

学学C吧.

不过这里有一个用VB做的全局HOOK的例子,你下载去看看:

http://www.m5home.com/bbs/dispbbs.asp?boardID=2&ID=61&page=4
cso 2005-07-23
  • 打赏
  • 举报
回复
vb程序控制其他软件的程序那只能用hook,vb写hook很不安全,容易程序崩溃,建议到c下
cso 2005-07-23
  • 打赏
  • 举报
回复
需要拦截窗体的消息不需要hook那么麻烦,用子类即可
这里有个例子(通过子类化,限制文本框的输入长度):http://community.csdn.net/Expert/topic/3222/3222548.xml?temp=.1736719
zhouxu21 2005-07-23
  • 打赏
  • 举报
回复
我正在做一个用 vb程序控制其他软件的程序。有2个问题,1、窗体上每个子窗口都有固定的id号吗?用哪个api函数可以取得窗体的id号,我已经知道他的句柄。2、关于截取系统的消息,要用到钩子(hook),我要监视这个程序窗体上的一个按钮的状态,当按钮动作时,其状态从可用变为灰的不可用,我在网上查了一些相关内容,说要用c++做dll,然后用vb调用,vb只能监视自己的消息,能不能帮我写一个hook,截取指定线程的消息。
lc_mtt 2005-07-23
  • 打赏
  • 举报
回复
拦截别的程序的消息?不会

1,486

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧