“QQ反骚扰”开发手记
呆在家中上网聊天实在不是一件惬意的事每一天打开QQ,迎接我的都是一串一串的广告……国庆黄金周,连广告也不放过!(
无奈,打开Visual C++,开始了我的“反骚扰”之路。
我面对的问题是QQ一共有几种广告,我能用什么方法消灭它们?
前半个问题很好回答,相信所有常Q的朋友都知道。QQ的广告有三种第一种是在系统消息中的弹出式Flash广告,第二种是直接弹出的Flash广告(窗体非常花哨),第三种是以系统广播形式出现的文字式广告。
对于后半个问题,我给出的答案是在广告对应的窗体上,都有相应的按钮可以将其关闭,点击即可。
不是吧,就这么简单?也许你要这么问。
是的,不过我是说,让我的“QQ反骚扰”帮助我点击这些按钮。即在取得这些按钮的句柄后,向该按钮发送一个单击消息,如下代码所示
SendMessage( hButton, BM_CLICK, 0, 0 );
也许会有朋友问,为什么不直接将对话框消灭掉,即
EndDialog( hDialog, TRUE );
问得好!具体原因是……呵呵,我也不知道)但我能告诉你的是,你可以将我的代码换成上面那一句,效果可能不会很理想的,因为我试过。,有很多的共享软件点击器之所以叫“点击器”就是这个道理。单单消灭这个窗口,很可能由该窗口占用的一些系统资源就会流失,相比之下,还是使用点击的方法,让对话框自己调用它回调函数中的退出部分来消灭对话框,岂不是更加安全?
还有一个问题什么时候让它去点击呢?或者说,它怎么知道什么时候去点击呢?
我的答案是时刻监视。
是了,这就是我在软件的Readme.txt中所说的“计时器技术”了。很简单,只需在对话框的初始化中加入如下代码
SetTimer( hDlg, 1, 100, NULL );
第一个参数是需要设置计时器的对话框句柄,使用MFC的朋友可以省略这个参数;第二个参数是计时器的ID;第三个是计时器事件的触发时间间隔(以微妙为单位);第四个参数可以指定响应事件的回调函数,这里用不着,为NULL。
这样,便可以实现初步的功能——时刻监视了。在处理程序退出部分的代码时,一定要将先前创建的计时器销毁,即
KillTimer( hDlg, 1 );
因为计时器是一个耗费系统资源的东西,所以在程序结束的时候,必须销毁它以释放系统资源。
狼蚁网站SEO优化我来开始介绍如何来在内存中寻找QQ的三种广告窗口。以下的代码我均摘自“QQ反骚扰”的SDK源代码,请使用MFC的朋友们自行做出相应的改动。
在内存中有很多窗口,那么“QQ反骚扰”又是如何知道哪一个窗口是QQ的广告窗口呢?很简单,从窗口所具备的众多特征中取出两到三个来作为“过滤器”即可。比如对于系统消息的弹出式广告,它的“过滤器”就是它的标题——“腾讯QQ系统广播”和它的“关闭”按钮。
这样,在处理计时器事件时的代码如下
网络安全培训
- 网络安全常见漏洞类型 网络安全常见漏洞类型包
- 绿色上网顺口溜七言 绿色上网的宣传标语
- 网络安全等级保护测评 网络安全等级保护条例
- 如何加强网络安全 网络安全隐患有哪些
- 网络安全防护措施有哪些 网络安全等级保护等级
- 如何保障网络安全 如何做好网络安全保障工作
- 维护网络安全的措施有哪些 维护网络安全的主要
- 网络安全工程师好学吗 2024年网络安全工程师好学
- 网络安全注意事项简短 网络安全注意事项100字
- 网络安全面临的挑战 当前网络安全面临的新问题
- 网络安全培训哪个靠谱 网络安全培训找哪个
- 普及网络安全知识内容 普及网络安全教育
- 网络安全防范知识宣传内容 网络安全防范知识宣
- 如何做好网络安全工作 如何做好网络安全工作
- 网络安全常识的丰富内容 网络安全的相关知识
- 青少年网络安全教育片 青少年网络安全知识讲座