由于公司业务需要,QQ群发器经常被用来发送QQ广告,购买的QQ群发器不好用不说,而且是按机器收费的,有些功能还不能修改.

所以公司派我来开发一款自己的QQ群发器,我给群发器取名叫做飞速群发器,用来给软件外包群发送搞笑的笑话,避免被踢.

第一选择UI方面,我选择了最简单,最通用的MFC框架,拖几个控件不一会功夫就将UI设计好了,下面是UI的初步样子:

剩下的就是如何控制QQ发送消息.

我们发送消息,先进行分解

1.第一步打开需要发送的聊天窗口

2.找到要发送的聊天窗口

3.将要发送的内容填写到输入框

4.点击发送按钮

5.关闭聊天窗口.

先解决最简单的发送问题:

第一步:将要发送的内容放到聊天窗口

由于QQ是采用了自绘窗口来开发的,所以普通获取控件点发送的方式无效.

所以发送内容就只能通过复制粘贴到输入框中.

1.将要发送的内容复制到粘贴板

2.将粘贴的命令发送到聊天窗口.

第二步:发送消息

发送消息只能有2种方式:

1.通过模拟发送快捷键发送消息.

2.通过模拟鼠标点击发送QQ消息.

经过测试,这两种方式中,发送快捷方式是最靠谱的,因为模拟点击的方式,由于电脑分辨率不一样导致的UI位置也不一样.

会出现点不到的情况.

所以我这里采用的是模拟按键的方式. 模拟按Enter发送消息.

完成了上面的发送消息的基础部分,剩下的就是要完成一个个的QQ群自动打开的过程.

这里通过模拟上下安检的方式移动位置,按回车键打开窗口.

到此所有的工作已经完成.

下面是几张成果截图:

总结下:

本软件跟其他群发软件的区别以及特色:

1.飞速群发器软件功能实现还是很简单,没有做群组,单个群发,我觉得这个没那么必要。因为QQ会限制群发消息的数量。不如在群里群发来的效率高

2.飞速群发器软件实现了最常用的单一内容群发,在这个基础上还是先了多内容随机群发,实现方式是用文本文件方式,放在特定目录里面就行,程序自动去目录找

这比直接在软件上做管理功能简单高效。群发不同的内容只要创建几个不同的文件夹就行。

3.飞速群发器实现了群名称过滤功能,这里没有直接列出群,一个个让用户去选择,这种很低效率,我采用了关键词包含与排除的办法实现,这样子简单,需要发送的

关键词只要包含在群名称中,就给这个群发送,如果同时包含关键词和排除关键词,则不发送关闭打开下一个群。

4.软件发送过的群会记录住,在2个小时内不会同一个群里发送同样的内容。

5.软件附带群发记录功能,能将发送统计结果,以txt文件的方式导出,方便统计发送的情况。

最新文章

  1. Asp.net Core 通过 Ef Core 访问、管理Mysql
  2. Intent的七大组件——Android开发之路5
  3. Javascript:一个屌丝的逆袭
  4. CCI4.5/LintCode Validate Binary Search Tree
  5. centos 7 安装zabbix3.0
  6. val()方法
  7. 利用Java自带的MD5加密
  8. android屏蔽软键盘并且显示光标
  9. 在“BindingNavigator”删除数据前弹出确认框的实现
  10. C# 虚方法 抽象方法 接口
  11. Spark On YARN内存分配
  12. ***C - I love sneakers!(动态规划,分组背包)
  13. ios开发获取SIM卡信息
  14. Win10升级惹的祸,Oracle服务全没有了,怎么解决?
  15. 12条MySQL优化技巧
  16. bzoj 3673 可持久化并查集 by zky
  17. @Transactional spring 配置事务 注意事项
  18. 10折交叉验证(10-fold Cross Validation)与留一法(Leave-One-Out)、分层采样(Stratification)
  19. 读《移山之道-VSTS软件开发指南》
  20. .net类中静态方法的继承

热门文章

  1. Synthesizing Images of Humans in Unseen Poses
  2. 设计模式-(16)模版模式 (swift版)
  3. camera摄像原理之四:曝光和GAMMA
  4. Android无法自动创建USB打印机节点/dev/usb/lp0【转】
  5. linux永久或临时修改dns
  6. [Codeforces 1011E] Border
  7. linux下libpcap抓包分析
  8. 80个Python经典资料(教程+源码+工具)汇总——下载目录 ...
  9. SVN常用命令说明(转载)
  10. springboot(十)SpringBoot消息中间件RabbitMQ