首页
社区
课程
招聘
HOOK实现读取、存储远程进程的控件文本
发表于: 2006-8-14 20:57 10266

HOOK实现读取、存储远程进程的控件文本

2006-8-14 20:57
10266

似乎怎样对远程的控件文本操作,成了一个不大不小的问题。
尝试过VirtualAlloc+WriteProcessMemory+SendMessage似乎很不奏效。(对于list控件似乎很好用,但是edit、static之类的控件怎么弄都不成功)

于是为了某些程序能够实现操作远程控件文本的功能,特意写了一个动态链接库。似乎比较好用。

改dll其实没什么特别值得参考的地方。

大家拿来实用也好,拿代码来参考复制也罢,甚至权且当作是hook的例程反正回回帖子,捧捧人气就好!(广告云:“神州行,我看行”即为此理)

下附内容说明
=============================================================
修改远程窗口文本的动态连接库(未编译)

WRT.BAT文件为源代码+编译参数,放入已安装masm32的分区的任意目录中,双击编译。

输出:

LPTSTR __stdcall WGetRemoteTextA(HWND hWnd,LPTSTR sztext);
LPTSTR __stdcall WSetRemoteTextA(HWND hWnd,LPTSTR sztext);

第一个函数读取远程窗口文本
第二个函数写入远程窗口文本
两者都是stdcall的函数,它的返回值就是LPTSTR sztext。
---------------------------------------------------
注:
1、WRT是WRemoteText的缩写
2、代码中提供了UNICODE的部分,但是我没有用过UNICODE写过程序。不知道这样子会不会有错。所以comment了。
3、若要修改文件名,不要忘记把WRT.BAT中的环境变量也做相应的设置!
==================================================================
源代码:


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 7
支持
分享
最新回复 (10)
雪    币: 249
活跃值: (10)
能力值: ( LV12,RANK:250 )
在线值:
发帖
回帖
粉丝
2
顶一顶

那么,有谁给个VirtualAlloc+WriteProcessMemory+SendMessage改变 EDIT 或者STATIC文本的例子行吗?(list是成功了,edit和static怎么弄都不行)

谢谢
2006-8-15 18:55
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
支持开源,共同学习
2006-8-16 09:41
0
雪    币: 249
活跃值: (10)
能力值: ( LV12,RANK:250 )
在线值:
发帖
回帖
粉丝
4
感谢大家支持
2006-8-16 18:56
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
支持原创

用处很多啊这东西
2006-8-17 05:53
0
雪    币: 1324
活跃值: (5179)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
6
顶一下......
2006-8-20 13:39
0
雪    币: 1324
活跃值: (5179)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7
有没取 ListView 控件的代码(在 2003 的系统上实现)

http://bbs.pediy.com/showthread.php?s=&threadid=30291
2006-8-20 13:45
0
雪    币: 153
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
edit、static直接用GetWindowText和SetWindowText就可以了。当然,static必须有HWND
2006-8-23 13:45
0
雪    币: 117
活跃值: (20)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
支持!下下来学习下。
2006-8-31 10:54
0
雪    币: 249
活跃值: (10)
能力值: ( LV12,RANK:250 )
在线值:
发帖
回帖
粉丝
10
最初由 verybigbug 发布
edit、static直接用GetWindowText和SetWindowText就可以了。当然,static必须有HWND


你试试看
这种方法在windows 3.2下是肯定通过的,windows9x、NT下是肯定不能通过的。

不会还有人在用win3.2吧
2006-8-31 18:22
0
雪    币: 249
活跃值: (10)
能力值: ( LV12,RANK:250 )
在线值:
发帖
回帖
粉丝
11
最初由 kagayaki 发布
有没取 ListView 控件的代码(在 2003 的系统上实现)

http://bbs.pediy.com/showthread.php?s=&threadid=30291


我看过的,
问题是同样的方法处理list却是能够成功,作用在edit/static上为什么就不行……找不出原因,十分郁闷。
所以才只好写成hook,挂到那个进程上。

或许是当时用上述远程heap方法的时候哪里粗心,反正现在有了此DLL以后也就不去讨论这个问题了。得过且过
2006-8-31 18:26
0
游客
登录 | 注册 方可回帖
返回
//