首页
社区
课程
招聘
[求助]获取指定窗口中的列表框内容 [已解决]
发表于: 2007-8-20 08:58 10021

[求助]获取指定窗口中的列表框内容 [已解决]

2007-8-20 08:58
10021
汗,MS自己可以解决,不用麻烦大家了.

怎么删自己发的帖子啊.

555

[培训]科锐逆向工程师培训第53期2025年7月8日开班!

收藏
免费 1
支持
分享
最新回复 (9)
雪    币: 229
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
刚才不是还见帖代码了,这会呢?
2007-8-20 14:06
0
雪    币: 709
活跃值: (2590)
能力值: ( LV12,RANK:1010 )
在线值:
发帖
回帖
粉丝
3
还没有完全解决.调试中发现没有获取指定窗口中列表框中的内容.

原因是:
// 得到目标窗口的列表框中的内容数量
		int nCount = ::SendMessage (g_hWnd, LB_GETCOUNT, 0, 0);
		::MessageBox (NULL, TEXT("列表框中内容的数量:"), (LPCTSTR)nCount, MB_OK);


这里发送消息后并没有取得 nCount  的值:

不知道为什么消息没发送成功.

代码发上来了,有兴趣的帮忙看看咯~
上传的附件:
2007-8-20 16:22
0
雪    币: 709
活跃值: (2590)
能力值: ( LV12,RANK:1010 )
在线值:
发帖
回帖
粉丝
4
无内容

2007-8-20 21:00
0
雪    币: 229
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
by pass ARK?解决了的话不烦帖一下,难得再写代码.
2007-8-21 09:13
0
雪    币: 709
活跃值: (2590)
能力值: ( LV12,RANK:1010 )
在线值:
发帖
回帖
粉丝
6
哦,代码帖出来了.

原理是安装一个键盘钩子WM_GETMESSAGE,当用户按下F8时进入DLL中的钩子函数, 通过鼠标的坐标获取指定窗口句柄,然后向该窗口发送 LB_GETCOUNT 和 LB_GETTEXT消息.

获得列表框中的内容写入到C:\List.txt下,并显示出来.

..................................................................

现在就卡在LB_GETCOUNT  这里了, 因为没有发送成功.
2007-8-21 11:07
0
雪    币: 229
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
相关介绍:很多anti rootkit/rootkit detector在显示进程、文件、注册表,端口等时都使用listbox或者listctrl,因此如果对控件本身进行修改(某文件)或者劫持控件消息,就可以轻易的对特定的项目进行隐藏。由于多数工具都防御了远程线程、全局钩子等注入,但是我们可以通过劫持进程创建,在进程创建时注入,或者干脆修改knowdlls中的user32来达到目的或者加载外在dll.

我之前想你做这个是为了逃避anti-rootkit工具的,所以跑进来看看.你要完成的功能网上代码很多的,如"hook取词",你去搜搜就能找到了:)
2007-8-21 12:01
0
雪    币: 709
活跃值: (2590)
能力值: ( LV12,RANK:1010 )
在线值:
发帖
回帖
粉丝
8
thanks
2007-8-21 13:42
0
雪    币: 217
活跃值: (30)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
iItem=::SendMessage(hwnd, EM_GETLINECOUNT, 0,0);
试试用这个消息,不是到你用的是不是CListCtrl
2007-8-25 22:42
0
雪    币: 709
活跃值: (2590)
能力值: ( LV12,RANK:1010 )
在线值:
发帖
回帖
粉丝
10
汗,问题早已经解决了, 用::GetClassName获得控件名称,判断是否为ListBox,然后就可以了...

结帖!
2007-8-26 14:14
0
游客
登录 | 注册 方可回帖
返回