我想用JAVA做一个QQ自动登录的程序.如下:Process process = Runtime.getRuntime().exec ("E:\\Program Files\\QQ.exe");打开QQ,然后就是输入QQ号
Robot rb = new Robot();
rb.keyPress(KeyEvent.VK_1);
rb.keyPress(KeyEvent.VK_1);
rb.keyPress(KeyEvent.VK_1);
rb.keyPress(KeyEvent.VK_1);
rb.keyPress(KeyEvent.VK_1);
rb.keyPress(KeyEvent.VK_1);
rb.keyPress(KeyEvent.VK_1);
rb.keyPress(KeyEvent.VK_1);
rb.keyPress(KeyEvent.KeyEvent.VK_TAB);
然后再输入密码.
可是无法激活QQ窗口为当前窗口.

解决方案 »

  1.   

    为什么不用QQ自带的自动登录~~
    Java要做的话是不是要取得什么句柄啊?
      

  2.   

    import java.awt.Robot;
    import java.awt.event.*;
    public class syscall{
    public static void main(String [] args) throws Exception{
    String url="C:\\Program Files\\Tencent\\QQ\\QQ.exe";
    //String url="notepadfd.exe";
    try{
    Process process = Runtime.getRuntime().exec (url);
    Robot rb = new Robot();
    rb.delay(1000);
    rb.mouseMove(440,340);
    rb.delay(1000);
    rb.mousePress(InputEvent.BUTTON2_MASK);
    for(int i=0;i<12;i++){
    rb.keyPress(KeyEvent.VK_DELETE);
    }
    String yourQQNum="10000";
    String yourQQPWD="tencent";
    for(int i=0;i<yourQQNum.length();i++){
        rb.keyPress((int)(yourQQNum.charAt(i)));
        rb.delay(300);
    }
    rb.keyPress(KeyEvent.VK_TAB);
    for(int i=0;i<yourQQPWD.length();i++){
    rb.keyPress((int)(yourQQPWD.charAt(i)));
        rb.delay(300);
    }
    rb.keyPress(KeyEvent.VK_ENTER);
    rb.keyPress(KeyEvent.VK_ENTER);
    }catch(Exception e){
     System.out.println(e);
    }
        }
    }