在程序A中截获程序B的所有输入(键盘、鼠标)??(帮顶有分哦^_^)

angelcool 2005-03-28 06:51:55
怎样能实现:
在程序A中截获程序B的所有输入(键盘、鼠标)??A进行处理后再还给B。
『钩子函数只能截获调用程序的消息,即只能截获程序A的消息。
我希望通过A的调用可以截获B的消息』

各位大侠,救命呀!!
这里卡住下面都无法进行!!
...全文
334 29 打赏 收藏 转发到动态 举报
写回复
用AI写文章
29 条回复
切换为时间正序
请发表友善的回复…
发表回复
angelcool 2005-03-30
  • 打赏
  • 举报
回复
-----------------------
已知窗口句柄,如何得到它的线程ID和进程ID???
-----------------------

GetWindowThreadProcessId()函数可以获取,可是MSDN上说,如果lpdwProcessId的值不为NULL则拷贝线程ID给它。 我要有值还用问它!!晕!
If this parameter is not NULL, GetWindowThreadProcessId copies the identifier of the process to the 32-bit value
返回的ThreadID似乎始终是0值!!
oyljerry 2005-03-30
  • 打赏
  • 举报
回复
OpenProcess
angelcool 2005-03-30
  • 打赏
  • 举报
回复
OK,搞定!原来把句柄写错了!!
--------------
那ProcessID如何获取呢??
----------------------------
angelcool 2005-03-30
  • 打赏
  • 举报
回复
to hyamw(林锋)
我就是这样做的,可它还是一个全局钩子,所有窗口的键盘输入都被截获了。
我用的也是在DLL中
hyamw 2005-03-30
  • 打赏
  • 举报
回复
to 楼主:
不好意思,最近比较忙,难得上线。
我做的钩子都是在DLL里面的,没有试过不用DLL的局部钩子,你可以尝试一下,应该是可以吧。

我的安装代码如下:

HWND hWnd = ::FindWindowEx(NULL, NULL,NULL, "test");
DWORD id = GetWindowThreadProcessId(hWnd, NULL);
g_hKeyHook = ::SetWindowsHookEx(WH_KEYBOARD,(HOOKPROC)KeyboardProc, g_hInstances, id);
lizhenlz 2005-03-30
  • 打赏
  • 举报
回复
DING
angelcool 2005-03-30
  • 打赏
  • 举报
回复
DING
cooljjyy 2005-03-29
  • 打赏
  • 举报
回复
游戏的内挂当然不可能去修改游戏客户端的程序啊。首先获取目标进程的句柄是一定要的,参考一下SDK的例子就行了。然后在目标进程的地址空间分配一段空间,把一段执行代码写进去,然后调用CreateRemoteThread()在目标进程内创建一个线程。前面的那段代码里面就可以做任何你想要做的事情了。用google随便搜索一下CreateRemoteThread应该就能找到不少帮助。
angelcool 2005-03-29
  • 打赏
  • 举报
回复
--------------------
一定是要 dll 支持的
--------------------
那岂不是铁定不行!!有没有别的路径可寻?
huwei001982 2005-03-29
  • 打赏
  • 举报
回复
一定是要 dll 支持的
rorl 2005-03-29
  • 打赏
  • 举报
回复
bd
daydaymissyou 2005-03-29
  • 打赏
  • 举报
回复
ding
angelcool 2005-03-29
  • 打赏
  • 举报
回复
已知窗口句柄,如何得到它的线程ID和进程ID。
GetWindowThreadProcessId()函数可以获取,可是MSDN上说,如果lpdwProcessId的值不为NULL则拷贝线程ID给它。 我要有值还用问它!!晕!
If this parameter is not NULL, GetWindowThreadProcessId copies the identifier of the process to the 32-bit value
返回的ThreadID似乎始终是0值!!
bobob 2005-03-29
  • 打赏
  • 举报
回复
要做全局钩子必须是dll,否则只能钩到自己程序的东西!
angelcool 2005-03-29
  • 打赏
  • 举报
回复
大侠......
angelcool 2005-03-28
  • 打赏
  • 举报
回复
to cooljjyy(叽叽歪歪)
--------------------
『在目标进程的地址空间加载一份执行代码』
--------------------
你的意思是在目标进程中调用HOOK吗?可是我是不能对目标进程编程的。我只能在另一个程序中告诉HOOK去截获目标进程的消息给我。这样可以实现吗?
cooljjyy 2005-03-28
  • 打赏
  • 举报
回复
不用全局hook的话,可以参考类似一些游戏内挂的做法,在目标进程的地址空间加载一份执行代码,然后再接管某些函数。不过还是要使用DLL,但是可以不用全局hook。
angelcool 2005-03-28
  • 打赏
  • 举报
回复
to alec626(月吻长河)
因为我还需要再做一些处理,所以只能把钩子放在程序中而不能做成DLL。
月吻长河 2005-03-28
  • 打赏
  • 举报
回复
一般的做法就是使用钩子
angelcool 2005-03-28
  • 打赏
  • 举报
回复
to long_xing(龙*星)
原来如此!!多谢!!

to hyamw(林锋)
SetWindowsHookEx中将最后一个参数设置为要拦截的进程的ID,我的方法哪里不对??
另:这个需要dll的支持吗?(希望不需要)
加载更多回复(8)
##KodExplorer (http://kalcaddle.com/) ###ver2.61(2014.7.12) `商业版授权请联系:kalcaddle#qq.com` #### 1.是什么: - Kodexplorer为千帆网络工作室开发的一款服务器文件管理程序。 - 完美取代FTP管理:可用于服务器文件管理,zip解压缩 备份还原、支持图片、音乐、视频预览、office、pdf等格式在线预览。文件夹拖拽上传……。 - 在线编程:支持几乎所有编程语言的在线编辑(高亮,多光标编辑.堪比本地的sublime) - 极佳的操作体验:及其便捷的快捷键支持,让你拥有本地化的体验 - 文等多语言支持:文编码全面兼容,文件编辑自动适配。 - 超快的速度:全面采用Ajax+Json进行数据通信,毫秒级的响应速度; - 全平台兼容性:Win Linux Mac (Apache、Nginx、IIS) #### 2.使用场景: - 取代FTP,服务端、客户端软件等复杂的安装配置。kod可以一键安装随处使用. - 你可以用它来管理你的服务器(备份,在线解压缩,版本发布....) - 你可以把他当做管理linux的一个操作系统界面 - 可以用来作为私有云存储系统,存储你的文件... - 当然你也可以用来分享文件 - Web IDE / browser code editor awesomeness - 更多场景等你来挖掘!…… #### 3.使用说明 管理员: admin/admin 普通用户:demo/demo 游客用户:guest/guest [如何使用] 下载程序,解压上传到你的服务器路径下,data目录设置777权限。访问体验超便捷的服务吧! (data目录没有写权限会导致配置修改不能保存、不能新建用户等) [关于上传问题] 程序没有做任何限制,如果需要上传大文件,则修改 php.ini:`upload_max_filesize = 1000M post_max_size = 1000M` [关于解压缩问题] 程序不做任何限制,如若失败请设置php内存限制。memory_limit 1000M [关于兼容性] 建议使用chrome firefox ie9+ 体验更完整。ie8以下基本上不做兼容处理。chrome支持文件夹拖拽上传。 [文件打开] office文件在线预览功能,服务器必须在公网(外部能访问该服务器) [忘记密码] 修改data/system/member.php 密码为明文的md5值 例如将admin密码重设为admin 则修改第一行:"name":"admin","password":"21232f297a57a5a743894a0e4a801fc3" ![](https://cloud.githubusercontent.com/assets/3761968/2583304/764f562a-b9cf-11e3-8e59-afdbdffc20eb.png) ###ver2.61 `2014/7/12` ---- ####update: - 实时搜索,根据搜索框内容变化,实时选匹配到的结果; - 弹出搜索框遍历子文件夹递归搜索 - session key 加入kod_前缀 避免和其他系统key冲突 - 编辑器选优化 选择鼠标到窗口外事件处理 ####fix bug:(bug解决和程序优化) - backspace后退截获浏览器事件,作为后退前一次访问的文件夹; - 搜索首字母不匹配问题 - 弹出层的弹出层关闭,父窗口失去焦点问题。 - 代码grunt部分代码拆分开,放到程序外面;提交到git、osc - 桌面:删除alert enter快捷键删除 - install 检测 加入跳过,(只判断用到的函数) 加入多语言 - zip压缩没有权限 提示红色,false 统一查找 - 登录成功后 验证码输错清除 - 非root用户拖拽到文件夹问题 - 非root解压问题 不能解压 - list oexe 图标问题 - 用户目录不存在判断 - fileCahe 互斥锁 reset 不用 - ie 8~10样式问题调整 ###ver2.6 `2014/7/6` ---- ####update: - 完全性优化;加入严格的校验机制 - 首次运行环境检测[data目录检测,必须的函数支持提示] - 上传已存在处理——创建副本(另外包括粘贴,解压) - 选优化 ctrl选拖拽 - 键盘快捷键选文件,多个字符

16,550

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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