首页
社区
课程
招聘
[讨论]GetWindow遍历窗口 和GetWindowLongA 不走内核的函数.
发表于: 2018-11-6 01:19 5609

[讨论]GetWindow遍历窗口 和GetWindowLongA 不走内核的函数.

2018-11-6 01:19
5609
如题
GetWindow 和GetWindowLongA 这些API 不走内核API的..怎么得到数据的 ...逆了会 没看懂. 有大大逆过的 能告诉下这结构和实现的机制吗?


比如使用 GetWindow遍历窗口  内核下怎么把他干掉?
 _GetWindow(::GetDesktopWindow());
void _GetWindow(HWND hWnd)
{
char szBuffer[MAX_PATH];
char strBuff[100];
char szClassName[100];
HWND hChildWnd;
HWND TophWnd = GetWindow(hWnd, GW_CHILD);
hChildWnd = TophWnd;
while (hChildWnd != NULL) {
::GetWindowText(hChildWnd, strBuff, 100);
::GetClassNameA(hChildWnd, szClassName, 100);
_snprintf(szBuffer, MAX_PATH, "hChildWnd:%d(0x%x) title:%s classname:%s \r\n", hChildWnd, hChildWnd, strBuff, szClassName);
OutputDebugStringA(szBuffer);
hChildWnd = ::GetNextWindow(hChildWnd, GW_HWNDNEXT);
}
}

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

收藏
免费 0
支持
分享
最新回复 (8)
雪    币: 2473
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
逆?了?会?   
有个工具叫IDA  
楼主了解下?




上传的附件:
2018-11-6 02:00
0
雪    币: 914
活跃值: (2463)
能力值: ( LV5,RANK:68 )
在线值:
发帖
回帖
粉丝
3
做挂用的?
2018-11-6 08:25
0
雪    币: 35
活跃值: (612)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
PYGame 逆?了?会?   有个工具叫IDA  楼主了解下?
ida伪代码又不能当真代码用吗,我是想知道内核怎么处理的,是哪个结构或者链表存的这句柄
我尝试hook 

NtusecallHwnd 没用

最后于 2018-11-6 09:56 被guotouck编辑 ,原因:
2018-11-6 09:30
0
雪    币: 1392
活跃值: (5177)
能力值: ( LV13,RANK:240 )
在线值:
发帖
回帖
粉丝
5
谁告诉你不走内核API了。
2018-11-6 10:45
0
雪    币: 35
活跃值: (612)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
IamHuskar 谁告诉你不走内核API了。
论坛搜getwindow,看到v校说也不走内核
2018-11-6 12:53
0
雪    币: 914
活跃值: (2463)
能力值: ( LV5,RANK:68 )
在线值:
发帖
回帖
粉丝
7
不能人云亦云,不自己试试怎么直到真实结果呢
2018-11-7 08:49
0
雪    币: 1570
活跃值: (383)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
8
不懂,看看..
2018-11-7 09:22
0
雪    币: 3
活跃值: (466)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
应该是 进程创建的时候  传递给了内核   然后 只要load user32 就可以 映射到R3?
2020-7-24 10:33
0
游客
登录 | 注册 方可回帖
返回
//