java自动发送qq消息

根据键盘命令利用复制粘贴自动发送QQ消息

public static void main(String[] args) {
        String QQ = "";//这里设置你要发送的QQ号,需要已经添加好友
        String url = "http://wpa.qq.com/msgrd?v=3&uin=" + QQ + "&site=qq&menu=yes";//设置调用聊天框url
        String cmd = "explorer \"" + url + "\"";//通过cmd命令使用默认浏览器访问url,通过浏览器唤起QQ
        try {
            //执行cmd命令
            Process proc = Runtime.getRuntime().exec(cmd);
            proc.waitFor();

            String sentence = "";// 定义要发送的话
            Robot robot = new Robot();// 创建Robot对象
            robot.delay(3000);// 延迟三秒,主要是为了预留出打开窗口的时间,括号内的单位为毫秒
            Clipboard clip = Toolkit.getDefaultToolkit().getSystemClipboard();
            for (int j = 0; j < 20; j++) {//循环次数
                Transferable tText = new StringSelection(sentence);
                clip.setContents(tText, null);
                // 以下两行按下了ctrl+v,完成粘贴功能
                robot.keyPress(KeyEvent.VK_CONTROL);
                robot.keyPress(KeyEvent.VK_V);

                // 释放ctrl按键,像ctrl,退格键,删除键这样的功能性按键,在按下后一定要释放,不然会出问题。crtl如果按住没有释放,在按其他字母按键是,敲出来的回事ctrl的快捷键。
                robot.keyRelease(KeyEvent.VK_CONTROL);
                // 延迟一秒再发送,不然会一次性全发布出去,因为电脑的处理速度很快,每次粘贴发送的速度几乎是一瞬间,所以给人的感觉就是一次性发送了全部。这个时间可以自己改,想几秒发送一条都可以
                //robot.delay(1000);
                robot.keyPress(KeyEvent.VK_ENTER);// 回车

            }

        } catch (Exception e) {
            e.printStackTrace();
        }


    }

你可能感兴趣的:(java自动发送qq消息)