首页
社区
课程
招聘
[求助]关于Hook的问题!
发表于: 2012-4-2 08:11 5111

[求助]关于Hook的问题!

jhlqb 活跃值
10
2012-4-2 08:11
5111
问题是这样的:

有一个程序,在点击打开文件时,让输入文件的全路径,让人很头痛。所以想做一个Hook,实现在点击打开文件时,弹出打开文件对话框,选取路径后,将选择的文件的全路径传递给原始软件。请高人给个思路。并且这个打开文件功能做在一个子对话框内。

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 244
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
注入 DLL 到那个程序中,在那个程序中弹出打开文件对话框,顺便你可以修改掉原来的窗口处理过程
2012-4-2 09:00
0
雪    币: 289
活跃值: (236)
能力值: ( LV13,RANK:420 )
在线值:
发帖
回帖
粉丝
3
你好!能不能说的详细点了。我现在做了一个HOOK,思路是这样的,响应了文本框所在的对话框的右键事件,已经能够显示打开文件对话框,但是程序回写时,就强制退出了。是不是共享数据没有做好?
2012-4-2 09:25
0
雪    币: 244
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
我的意思是注入 DLL 到程序中,然后你用 SetWindowLong 替换掉原来程序的窗口过程,
然后捕获到原来的"点击打开文件"的 ID 之类的,然后你给他注册一个消息,以后每当这个消息来临是,
你就弹出一个打开文件对话框,由于你的 DLL 都已经在程序的进程空间里面了,
你自然就可以将获取到的打开文件对话框中获得的 Path 填入你的文本框了。
2012-4-2 10:31
0
雪    币: 289
活跃值: (236)
能力值: ( LV13,RANK:420 )
在线值:
发帖
回帖
粉丝
5
不要沉下去啊!大家继续给建议了。
2012-4-8 14:46
0
雪    币: 506
活跃值: (70)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
就是这个味儿
2012-4-8 15:25
0
雪    币: 289
活跃值: (236)
能力值: ( LV13,RANK:420 )
在线值:
发帖
回帖
粉丝
7
那个软件用的文本框的类名是TextArea,获得这个文本框的句柄后,发送WM_SETTEXT消息,居然没有什么反应,用Spy++查看后,晕,居然原来的没有的标题栏,显示了发送过去的文本。
2012-4-9 06:30
0
游客
登录 | 注册 方可回帖
返回
//