想用JAVA制作一个像按键精灵那样的程序,模拟鼠标/键盘的各种操作,该如何制作呢?
即使把这个操作模拟出来..如何发送给"执行操作的程序"还是个问题....

解决方案 »

  1.   

    用jni吧,不过这个用java来做就是自找麻烦
      

  2.   

    以前还不知道有JNI..刚刚去查了一下,好象JNI就是调用其他C/C++程序来执行..那样好象就没必要用JAVA了...难道JAVA在这方面比欠缺?稍微有点C基础,那如果用C的话,该如何做啊?
      

  3.   

    http://topic.csdn.net/T/20051121/21/4408946.html这是我以前问的关于键盘的,你看看
      

  4.   

    java.awt 
    类 Robot
    java.lang.Object
      java.awt.Robot--------------------------------------------------------------------------------public class Robotextends Object此类用于为测试自动化、自运行演示程序和其他需要控制鼠标和键盘的应用程序生成本机系统输入事件。Robot 的主要目的是便于 Java 平台实现自动测试。 使用该类生成输入事件与将事件发送到 AWT 事件队列或 AWT 组件的区别在于:事件是在平台的本机输入队列中生成的。例如,Robot.mouseMove 将实际移动鼠标光标,而不是只生成鼠标移动事件。 注意,某些平台需要特定权限或扩展来访问低级输入控件。如果当前平台配置不允许使用输入控件,那么试图构造 Robot 对象时将抛出 AWTException。例如,如果 X 服务器不支持(或没有启用)XTEST 2.2 标准扩展,则 X-Window 系统会抛出异常。 出于自测试之外的目的而使用 Robot 的应用程序应妥善处理这些错误条件。 从以下版本开始: 
    1.3 
      

  5.   

    用yko2008(0101001)的方法可以模拟出部分操作了
    akey.keyPress(KeyEvent.VK_A);
    akey.keyRelease(KeyEvent.VK_A);
    不过只能模拟字母和数字的按键,像"CTRK HOME PageUp ,./\-"  这些按键,该怎么做呢?键盘输入我使用的是:
    String s;
    buf = new BufferedReader(new InputStreamReader(System.in));
    s=buf.readLine();
    可以输入字符,但是每行都需要按回车才可以,好象有个是System.?的输入方法,可惜一直没找到..望知道的朋友告之
      

  6.   

    你看下JDK帮助,不只是只能模拟字母和数字的按键
      

  7.   

    请问如何组合调出任务管理器(CTRL+ALT+DELETE)?
      

  8.   

    我去找了下JKD帮助,上面列出了HOME/ALT/TAB等,但是对CRTL和DEL还没有说...也有可能是我看的不够仔细....
    http://gceclub.sun.com.cn/Java_Docs/html/zh_CN/api/java/awt/event/KeyEvent.html
    其实我就是想用JAVA模拟CTRL+ALT+DELETE这个操作的,呵呵
      

  9.   

    a.keyPress(KeyEvent.VK_ALT);
    a.keyPress(KeyEvent.VK_CONTROL);
    a.keyPress(KeyEvent.VK_Z);
    a.keyRelease(KeyEvent.VK_Z);
    a.keyRelease(KeyEvent.VK_ALT);
    a.keyRelease(KeyEvent.VK_CONTROL);
    使用这个可以顺利的呼出QQ截面了
    但是
    a.keyPress(KeyEvent.VK_ALT);
    a.keyPress(KeyEvent.VK_CONTROL);
    a.keyPress(KeyEvent.VK_DELETE);
    a.keyRelease(KeyEvent.VK_DELETE);
    a.keyRelease(KeyEvent.VK_ALT);
    a.keyRelease(KeyEvent.VK_CONTROL);
    却没有出现Win的那个界面,系统是Win2000Server