自动打call机 qq伪自动发消息

博主分享了如何利用Windows API中的`keybd_event`和`mouse_event`函数,创建一个自动发送消息的程序。通过读取字符并转换为ASCII码模拟键盘输入,结合鼠标点击功能定位到聊天窗口,实现了自动输入和发送预设文本的功能。此程序适用于快速重复发送特定消息,虽然简单但十分实用。
摘要由CSDN通过智能技术生成

今天考完了工图,下一门考试是2号的c语言…
考工图考的我好悲伤啊…画不完啊嘤嘤嘤
在这里插入图片描述
于是开始今日份瞎搞抚慰自己弱小的心灵

想做个自动发消息的机器,之前尝试过很多方法没有成功。最近玩windows.h库比较多,想着通过模拟键盘键入和鼠标点击试试看,没想到真有这样的函数。找到了一篇特别棒的博客,点击这里
首先,用一个暴力的打表程序得到想键入的东西的key code
我最近好爱用代码打代码啊

#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
char a;
int main(){
	while(cin>>a){
		printf("keybd_event(%d,0,0,0);keybd_event(%d,0,2,0);Sleep(30);\n",a+'A'-'a',a+'A'-'a');	
	}
	return 0;
}

字母的keycode它的大写对应的ascii值,所以进行了一点点处理

具体过程:先打开程序,然后在四秒内把桌面切换成和小伙伴的聊天框。程序会自动点一下输入的文本框,执行输入(我这里是先粘贴,然后输入文字),最后按回车。
土,但快乐。
至于怎么选输入的文本框,我根据显示器分辨率和用尺子量的坐标。
刚好拿画工图的尺子来量显示器

操作过程大概是这样:
在这里插入图片描述
然后上这个特别棒的click函数,是附的链接里的代码
真的好棒啊,我就直接用了QAQ

void click(int x, int y)
{
	mouse_event(MOUSEEVENTF_ABSOLUTE|MOUSEEVENTF_MOVE, x*65535/1920, y*65535/1080, 0, 0);
	Sleep(50);
    mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
    mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);
 }

我的输入框大概在1000,1000的位子。
这里有个粘贴,我把小伙伴的名字先放在剪贴板里,然后直接粘贴就有了。

这样的效果就是我可以一直给某位xxx同学发xxxyyds

#include <stdio.h>
#include <stdlib.h>
#include <Windows.h> //ShellExecuteA()
void click(int x, int y)
{
	mouse_event(MOUSEEVENTF_ABSOLUTE|MOUSEEVENTF_MOVE, x*65535/1920, y*65535/1080, 0, 0);
	Sleep(50);
    mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
    mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);
 }
int main()
{ 
	Sleep(4000);
	for(int j=1;j<=20;j++){
		click(1000, 1000);
		keybd_event(17,0,0,0);
		keybd_event(86,0,0,0);
		keybd_event(17,0,2,0);
		keybd_event(86,0,2,0);
		Sleep(1000); 	 
		keybd_event(89,0,0,0);keybd_event(89,0,2,0);Sleep(30);
		keybd_event(89,0,0,0);keybd_event(89,0,2,0);Sleep(30);
		keybd_event(68,0,0,0);keybd_event(68,0,2,0);Sleep(30);
		keybd_event(83,0,0,0);keybd_event(83,0,2,0);Sleep(30);	 
		keybd_event(32,0,0,0);
		keybd_event(32,0,2,0);
		Sleep(1000);
		keybd_event(0x0D,0,0,0);
		keybd_event(0x0D,0,2,0);
		Sleep(1000);
	}
	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值