Java实现QQ微信轰炸机1.5(乞丐版超进化)--妈妈再也不用担心我LOL骂不过别人了

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/xiao_xiao_b/article/details/100068361
咳咳咳,最近怎么不见涨粉啊?

在这里插入图片描述

之前评论里有小伙伴嫌QQ轰炸不过瘾

还想来点刺激的,问能不能在LOL游戏的时候进行轰炸(kai ma)

这位兄台怕是真把我当作大佬了

作为一位刚入门的程序员小白,本着用户就是爸爸的原则,浪费了我1/32的发量找到了门路

思路:我们之前开发的乞丐版的轰炸机,原理就是模仿ctrl+v 然后enter发送消息的任何聊天窗口,但是每次运行的时候都需要手动打开聊天窗口,QQ和微信这样的还容易解决,但是想LOL这样全窗口游戏的时候时切入切出时很难的,所以解决的思路就是让我们的代码在后台运行,像一些辅助外挂一样

我们也来个F10进入坦克
那么,怎么用java实现全局键盘监听呢?
别怕,我来教你,win+r打开运行窗口,然后输入cmd进入命令框
输入explorer "http://www.baidu.com"
然后你就会看到
在这里插入图片描述
回车,然后我们来到了java实现全局键盘监听https://blog.csdn.net/rico_zhou/article/details/80062914
这位博主真的是良心博主,不仅写了方法,还把源码挂在了github方便下载,俗话说的好,不给源码的博客就是耍流氓,这里给这个博主大大的赞
那么方法有了,那么,我们就把它和我们的乞丐版轰炸机结合起来就好啦
老样子,还是直接上源码
这个是轰炸机的关键代码,封装了参数方便进行修改

package createglobalhotkey;
import java.awt.AWTException;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.datatransfer.Clipboard;
import java.awt.datatransfer.StringSelection;
import java.awt.datatransfer.Transferable;
import java.awt.event.KeyEvent;
import java.util.Scanner;

public class QQBoom {
	public static void boomtest1(int search){
		String sentence=null;
		int num=0;
		if(search==1) {
			sentence = "我头上有犄角,我身后有尾巴,谁也不知道,我有多少秘密,我头上有犄角,我身后有尾巴,谁也不知道,我有多少秘密,我是一条小青龙,我有许多小秘密,我是一条小青龙,我有许多小秘密,我有许多的秘密,就不告诉你,就不告诉你,就不告诉你";// 定义F10要发送的话
			num=1;//发送的次数
		}
		else if(search==2) {
			sentence = "爱我你怕了吗";// 定义Shift+F10要发送的话
			num=20;//发送的次数
		}
		else {
			sentence = "听说你被拐卖,真的把我吓坏,你虽从小痴呆,却对社会无害,谁人如此大胆,竟拿你去卖,我真替他担心,卖得掉才怪!";// 定义Shift+Ctrl+F10要发送的话
			num=1;//发送的次数
		}
		Robot robot=null;
		try {
			robot = new Robot();
		} catch (AWTException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}// 创建Robot对象
		Clipboard clip = Toolkit.getDefaultToolkit().getSystemClipboard();
		String[] authors = sentence.split("[,|,]");// 字符串根据,分割
		robot.delay(3000);// 延迟三秒,主要是为了预留出打开窗口的时间,括号内的单位为毫秒
		for (int j = 0; j < num; j++) {//循环次数
			for (int i = 0; i < authors.length; i++) {
				String sentencet = authors[i];
				Transferable tText = new StringSelection(sentencet);
				clip.setContents(tText, null);
				robot.keyPress(KeyEvent.VK_CONTROL);
				robot.keyPress(KeyEvent.VK_V);
				robot.keyRelease(KeyEvent.VK_CONTROL);// 释放ctrl按键,像ctrl,退格键,删除键这样的功能性按键,在按下后一定要释放,不然会出问题。crtl如果按住没有释放,在按其他字母按键是,敲出来的回事ctrl的快捷键。
				robot.delay(500);// 延迟一秒再发送,不然会一次性全发布出去,因为电脑的处理速度很快,每次粘贴发送的速度几乎是一瞬间,所以给人的感觉就是一次性发送了全部。这个时间可以自己改,想几秒发送一条都可以
				robot.keyPress(KeyEvent.VK_ENTER);// 回车 
				// }
			}
		}
	}
}

这个是键盘监听的关键代码

package createglobalhotkey;

import java.awt.AWTException;
import java.awt.EventQueue;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.UIManager;

import com.melloware.jintellitype.HotkeyListener;
import com.melloware.jintellitype.JIntellitype;
import com.melloware.jintellitype.Main;

//创建全局快捷键
public class CreateGHKDemo extends JFrame implements ActionListener {
	public JButton jb1, jb2, jb3, jb4, jb5, jb6;
	// 快捷键1,2,3个
	public static final int GLOBAL_HOT_KEY_1 = 0;
	public static final int GLOBAL_HOT_KEY_2 = 1;
	public static final int GLOBAL_HOT_KEY_3 = 2;

	// 初始化
	public CreateGHKDemo() {
		init();
	}

	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				new CreateGHKDemo();
			}
		});
	}

	// 初始化
	private void init() {
		JPanel jp1 = new JPanel();
		jp1.setLayout(null);
		jb1 = new JButton("注册快捷键(F10)");
		jb1.setBounds(20, 20, 260, 30);
		jb1.addActionListener(this);
		jp1.add(jb1);

		jb2 = new JButton("注册快捷键(Shift+F10)");
		jb2.setBounds(20, 60, 260, 30);
		jb2.addActionListener(this);
		jp1.add(jb2);

		jb3 = new JButton("注册快捷键(Shift+Ctrl+F10)");
		jb3.setBounds(20, 100, 260, 30);
		jb3.addActionListener(this);
		jp1.add(jb3);

		jb4 = new JButton("删除快捷键(F10)");
		jb4.setBounds(20, 140, 260, 30);
		jb4.addActionListener(this);
		jp1.add(jb4);

		jb5 = new JButton("删除快捷键(Shift+F10)");
		jb5.setBounds(20, 180, 260, 30);
		jb5.addActionListener(this);
		jp1.add(jb5);

		jb6 = new JButton("删除快捷键(Shift+Ctrl+F10)");
		jb6.setBounds(20, 220, 260, 30);
		jb6.addActionListener(this);
		jp1.add(jb6);

		QQBoom boom=new QQBoom();
		// 添加热键监听器
		// 第二步:添加热键监听器
		JIntellitype.getInstance().addHotKeyListener(new HotkeyListener() {
			public void onHotKey(int markCode) {
				switch (markCode) {
				case GLOBAL_HOT_KEY_1:
						boom.boomtest1(1);
					break;
				case GLOBAL_HOT_KEY_2:
						boom.boomtest1(2);
					break;
				case GLOBAL_HOT_KEY_3:
						boom.boomtest1(3);
					break;
				}
			}
		});

		this.add(jp1);
		this.setTitle("注册全局快捷键");
		this.setSize(310, 310);
		this.setVisible(true);
		this.setLocationRelativeTo(null);
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}

	// 事件监听
	@Override
	public void actionPerformed(ActionEvent e) {
		// 监听注册全局快捷键
		if (e.getSource().equals(jb1)) {
			// 第一步:注册热键,热键标识,组合键(shift),主要热键F10
			JIntellitype.getInstance().registerHotKey(GLOBAL_HOT_KEY_1, 0, 121);
			JOptionPane.showMessageDialog(null, "注册快捷键(F10)", "注册成功,打开聊天窗口即可使用", JOptionPane.WARNING_MESSAGE);
		}
		// 监听注册全局快捷键
		if (e.getSource().equals(jb2)) {
			JIntellitype.getInstance().registerHotKey(GLOBAL_HOT_KEY_2, JIntellitype.MOD_SHIFT, 121);
			JOptionPane.showMessageDialog(null, "注册快捷键(Shift+F10)", "注册成功,打开聊天窗口即可使用", JOptionPane.WARNING_MESSAGE);
		}
		// 监听注册全局快捷键
		if (e.getSource().equals(jb3)) {
			JIntellitype.getInstance().registerHotKey(GLOBAL_HOT_KEY_3,
					JIntellitype.MOD_SHIFT + JIntellitype.MOD_CONTROL, 121);
			JOptionPane.showMessageDialog(null, "注册快捷键(Shift+Ctrl+F10)", "注册成功,打开聊天窗口即可使用", JOptionPane.WARNING_MESSAGE);
		}
		// 监听删除全局快捷键
		if (e.getSource().equals(jb4)) {
			JIntellitype.getInstance().unregisterHotKey(GLOBAL_HOT_KEY_1);
			JOptionPane.showMessageDialog(null, "删除快捷键(F10)", "删除成功", JOptionPane.WARNING_MESSAGE);
		}
		// 监听删除全局快捷键
		if (e.getSource().equals(jb5)) {
			JIntellitype.getInstance().unregisterHotKey(GLOBAL_HOT_KEY_2);
			JOptionPane.showMessageDialog(null, "删除快捷键(Shift+F10)", "删除成功", JOptionPane.WARNING_MESSAGE);
		}
		// 监听删除全局快捷键
		if (e.getSource().equals(jb6)) {
			JIntellitype.getInstance().unregisterHotKey(GLOBAL_HOT_KEY_3);
			JOptionPane.showMessageDialog(null, "删除快捷键(Shift+Ctrl+F10)", "删除成功", JOptionPane.WARNING_MESSAGE);
		}
	}
}

源码获取:
1、csdn资源下载
2、网盘下载链接:https://pan.baidu.com/s/1MxRkDL8HhsYel-48kwO0QA 提取码:60mj
3、群文件下载 811430241
4、github地址,欢迎大家star
最后的测试效果
在这里插入图片描述
运行后,点注册快捷键,然后最小化放到后台就可以了
此时打开任意一个聊天窗口
然后!F10进入坦克
在这里插入图片描述
用完了之后删除快捷键关闭窗口就可以了

什么?不是说好实现LOL问候的嘛

。。。
在这里插入图片描述
方法都教会了还非得实现嘛
下周更新下周更新,先欠着

后续还会持续更新版本,继续进行完善和趣味钻研

Java实现QQ微信轰炸机1.0(乞丐版)https://blog.csdn.net/xiao_xiao_b/article/details/93619747
java实现QQ微信轰炸机1.1(进阶版)https://blog.csdn.net/xiao_xiao_b/article/details/93989325
Java实现QQ微信轰炸机1.2(斗图乞丐版)https://blog.csdn.net/xiao_xiao_b/article/details/95601038
java实现QQ微信轰炸机1.3(自动调用聊天窗口)https://blog.csdn.net/xiao_xiao_b/article/details/96738172
java实现QQ微信轰炸机1.4(乞丐版大杂烩,斗图,调用QQ群窗口,定时)https://blog.csdn.net/xiao_xiao_b/article/details/97884588
Java实现QQ微信轰炸机1.5(乞丐版超进化)–妈妈再也不用担心我LOL骂不过别人了

技术小白,有误区劳烦大佬指点

你的点赞和关注就是我更新的最大动力

猜你喜欢

转载自blog.csdn.net/xiao_xiao_b/article/details/100068361