qq好友群发器(QQ好友群发器)
目前应该是有很多小伙伴对于qq好友群发器方面的信息比较感兴趣,现在小编就收集了一些与QQ好友群发器相关的信息来分享给大家,感兴趣的小伙伴可以接着往下看,希望会帮助到你哦。
过年的时候QQ里各种群发祝福不断,这种群发消息只能在节假日的时候才会出现。日常生活中,在需要用到群发功能的时候,还需要借助其他软件来实现群发。今天:在这里简单写一个实现QQ群发功能的软件(通过模拟按键来实现消息的群发)
不想敲代码,私信我“代码” 即可获取
创建项目
运行程序测试效果
选中控件,按下键盘上的删除<Delete>,控件就不见了。
选择控件,输入:开始发送(或者右击,属性,改变文字)
选择工具箱,找到Edit控件,在对话框上拖动显示出来..
添加其他的控件,设置对话框界面。最终界面效果:
编辑框右击,添加变量:m_msg
添加成功后
添加类 QQMsg
QQMsg.h里写入下列代码
不想敲代码,私信我“代码” 即可获取
#pragma once
//这个类是实现QQ群发的类
class QQMsg
{
public:
QQMsg();
~QQMsg();
//static 创建一个类的入口
static QQMsg *Instance() {
static QQMsg object;
return &object;
}
//入口函数(开启群发的函数实现)
void Start(const wchar_t *msg);//const 群发的消息,一般不改变
private:
//线程函数
static unsigned int WINAPI RunThreadProc(void *param);
//发送主函数
void SendMain();
//模拟键盘函数
void PressKey(BYTE vkey);//
//发送消息
void SendMsg();
//把文字拷贝到剪切板
void CopyTextToClipborad();
private:
CString m_Msg;
};
在QQMsg.cpp中实现代码
#include "stdafx.h"
#include "QQMsg.h"
QQMsg::QQMsg()
{
}
QQMsg::~QQMsg()
{
}
//入口函数(开启群发的函数实现)
void QQMsg::Start(const wchar_t *msg)
{
m_Msg=CString(msg);
//开始线程
_beginthreadex(NULL, 0, QQMsg::RunThreadProc, NULL, 0, NULL);
}
//线程函数
unsigned int QQMsg::RunThreadProc(void *param)
{
QQMsg::Instance()->SendMain();
return 0;
}
//发送主函数
void QQMsg::SendMain()
{
int errtimes = 0;
//实现整个发送消息的流程
//复制文字到剪切板
CopyTextToClipborad();
////int i;
while (errtimes<=4)
{
//2.找到QQ窗口
HWND hQQWnd = FindWindow(L"TXGuiFoundation",L"QQ");
//windows系统中窗口的查找.1.窗口类名称.2.标题
//工具 --> spy++
//找到一个最前的窗口
HWND hfront = GetForegroundWindow();
if (hQQWnd!= hfront)
{
if (!SetForegroundWindow(hQQWnd))//强制把QQ窗口置顶
{
MessageBox(NULL,L"找不到QQ窗口",L"警告",MB_OK);
break;
}
}
////模拟按键 keybd_event函数
if (errtimes == 0)
{//使用循环这里会出问题
// i = 6;
// while (i--)
// {
// PressKey(VK_TAB);
// }
//按下6次TAB键
PressKey(VK_TAB);
PressKey(VK_TAB);
PressKey(VK_TAB);
PressKey(VK_TAB);
PressKey(VK_TAB);
PressKey(VK_TAB);
}
PressKey(VK_DOWN);
PressKey(VK_RETURN);
HWND hcurfrontWnd = GetForegroundWindow();
if (hcurfrontWnd == hQQWnd)
{
errtimes++;
continue;
}
errtimes = 0;
SendMsg();
}
}
//模拟键盘函数
void QQMsg::PressKey(BYTE vkey)
{
//模拟按键 keybd_event函数
keybd_event(vkey,0,0,0);
Sleep(100);//时间间隔100ms
keybd_event(vkey,0,KEYEVENTF_KEYUP,0);
Sleep(100);
}
//发送消息
void QQMsg::SendMsg()
{
//ctrl+v
keybd_event(VK_CONTROL, 0, 0, 0);
Sleep(100);
keybd_event(0x56, 0, 0, 0);
Sleep(100);
keybd_event(0x56, 0, KEYEVENTF_KEYUP, 0);
Sleep(100);
keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0);
Sleep(100);
PressKey(VK_RETURN);//enter
PressKey(VK_ESCAPE);//Esc 关闭
}
//把文字拷贝到剪切板
void QQMsg::CopyTextToClipborad()
{
//全局内存中找一内存来存放字符串
int memLen = m_Msg.GetLength() * sizeof(wchar_t) + 2;
HANDLE hHandle = GlobalAlloc(GHND, memLen);
void *addr = GlobalLock(hHandle);
ZeroMemory(addr, memLen);
memcpy(addr, (const wchar_t*)m_Msg.GetBuffer(), memLen);
GlobalUnlock(hHandle);
//
OpenClipboard(NULL);//打开剪切板
EmptyClipboard();//清空
SetClipboardData(CF_UNICODETEXT, hHandle);//设置剪切板内容
CloseClipboard();//
}
返回对话框,双击开始发送按钮
3.将代码改为下列(并在此文件头中包含#include "QQMsg.h"):
不想敲代码,私信我“代码” 即可获取
UpdateData(true);
QQMsg::Instance()->Start(m_msg.GetBuffer());//m_msg.GetBuffer() 获取指针
最后大功告成。快去试一试吧。
本文结束,以上,就是qq好友群发器,QQ好友群发器的全部内容了,如果大家还想了解更多,可以关注我们哦。
相关文章
- 详细阅读
-
? :一手车卖给了二手车商,成交后第二天说车子是事故车,说隐瞒事实?详细阅读
我一手车卖给了二手车商,成交后第二天说车子是事故车,说我隐瞒事实,要求全款退车,我该怎么办? 报警处理。二手车行在车辆鉴定方面是内行,买车人在车辆鉴定...
2022-08-16 2462
-
搞笑短视频题材 :个人短视频槽点题材如何构思?详细阅读
我们反过来看一些搞笑的账号,这些账号虽然粉丝不少,内容也很不错,但是关注搞笑账号的用户,大多数都是为了开心的,所以这样的粉丝群体自然就很难变现。所以我...
2022-08-16 2971
-
91短视频版ios :有哪些苹果手机上能用,你又不愿意让人知道的好用的app呢?详细阅读
在苹果手机中使用的软件,在不越狱的情况下,大多数人都是在苹果商店上下载软件。 但是还有其他的方法可以让你的手机中安装上在苹果商店中没有的软件。 有两个...
2022-08-16 2317
-
短视频作品怎么发 :抖音如何发长视频完整版?详细阅读
抖音是我们熟知的一款非常火爆的短视频软件,在抖音上可以浏览别人的作品,也可以发布自己的作品,那么自己发布作品的时候想要发长视频,怎么发呢?一起来看一下...
2022-08-16 2268
-
短视频用户行为分析 :据说中国近八成手机网民是短视频用户,侵权问题如何解决?详细阅读
侵权这个问题在如今这个自媒体泛滥的时代不好精准定位。 因为一个好的题材自己发布出去可能只需要短短的几分钟时间就能够引起火爆。 平台的大数据根本无法做...
2022-08-16 1839
-
91短视频ios :苹果手机除了app store,还能在哪里下载软件?包括一些破解软件?详细阅读
苹果手机,下载软件,好像只能在苹果手机自带的APP STORE下载吧?我自己从来没有尝试过在其他地方下载,在越狱最火热的年份,我也没有尝试过越狱。 2...
2022-08-16 1664
-
富二代富二代短视频 :为什么现在富二代比穷二代努力?详细阅读
大家好这里是二次元胡辣汤。酸爽可口。 看到这个问题我首先想到了马太效应。富者更富,穷者更穷。这也是一个不争的事实。但是不否认那些努力的年轻人。 富二...
2022-08-16 1678
发表评论