HSHELL_WINDOWCREATED 学习心得
来源:互联网 发布:蜂窝数据语音与数据 编辑:程序博客网 时间:2024/06/05 17:21
上面写的很清楚,这种消息只能在top-level,unowned window被创建的时候才会生成。那什么是 top-level, unowned window 。这个网站上写的比较清楚http://www.codeguru.com/forum/showthread.php?t=491610。
Code:
// create a top-level window (not owned)HWND hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPED, // WS_CHILD style is not set, so it's a top-level window. CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, // no handle to the owner, so it's not owned. NULL, hInstance, NULL);
Code:
// create a top-level window (owned)HWND hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPED, // WS_CHILD style is not set, so it's a top-level window CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, hWndParent, // handle to the owner, so it's an owned window NULL, hInstance, NULL);
看上面的代码,只要没有设置WS_CHILD风格的窗口就是top_level的。unowned window窗口就是createwindow倒数第四个参数没有给值的就是了。那现在我们就可以得出结论了:用HSHELL_WINDOWCREATED 这种方式拦截浏览器下载框创建,只能拦截到普通ie下载(会弹出两个下载框)的里面那个,就是显示下载了多少那个,外面这个窗口就拦截不到的,因为他不是unowned 窗口。而搜狗高速下载模式就拦截不到了,它也不是unowned的。下面给几张图。
普通IE下载会弹出两个下载框
spy++参看两个窗口中里面那个得到的情况
spy++参看两个窗口中外面那个得到的情况
搜狗高速下载窗口信息
从上面可以看到除了普通IE下载 已完成安装这个窗口可以捕获到外,其他两个都是捕获不到的。
- HSHELL_WINDOWCREATED 学习心得
- 学习心得
- 学习心得
- 学习心得
- 学习心得
- 学习心得
- 学习心得
- 学习心得
- 学习心得
- 学习心得
- 学习心得
- 学习心得
- 学习心得
- 学习心得
- 学习心得
- 学习心得
- 学习心得
- 学习心得
- vi编辑命令
- Web Control 开发系列(一) 页面的生命周期
- Android application context/activity context与内存泄露
- 教训
- jsp页面的url里面传中文问题
- HSHELL_WINDOWCREATED 学习心得
- [刷机教程] [Root] S-OFF的同学来Root你的HTC Desire S
- Nehe的OpenGL的第二,三,四,五课的笔记
- .chm文件打不开的问题
- 欧洲、日本、美国,谁更会造汽车?中国该学谁?
- Web Control 开发系列(二) 深入解析Page的PostBack过程和IPostBackDataHandler
- MTK预计今年出货情况
- Java“流”详解
- 简易中断计时器