簡體   English   中英

Java Robot類可在筆記本電腦中工作,但不能在PC上工作

[英]Java Robot class working in laptop but not pc

這是我對stackoverflow的第一個問題。 過去,每當我遇到困難時,對我都有很大幫助。 無論如何,這里是問題所在:

我在PC上使用Java Robot。 一切都很好,就像我可以在記事本中鍵入的那樣,可以在其他應用程序(例如游戲等)中移動鼠標。但是只有這一款Java機器人無法使用的游戲。 在這個游戲上什么都沒有檢測到,甚至沒有鼠標移動。 我試圖對此進行一些研究,並得出結論,也許該游戲具有某種反機器人系統。 請記住,這是在我的Windows 7 64位PC中。 然后我想在同一游戲中在我的筆記本電腦(也是Windows 7 64bit)中使用相同的代碼,它起作用了!

所以我的問題是為什么會這樣? 為什么在筆記本電腦而不是PC上可以使用它?

這是代碼:

package test_bot1;

import java.awt.Robot;
import java.awt.event.KeyEvent;

public class test_BOT1 {
    public static void main(String[] args) {
        try{
            Robot bot = new Robot();
            bot.delay(3000);
            bot.mouseMove(500, 0);

            for(int i = 0; i < 10; i++){
                bot.keyPress(KeyEvent.VK_A);
            }
            bot.delay(100);
            bot.keyRelease(KeyEvent.VK_A);
            bot.delay(100);
            bot.keyPress(KeyEvent.VK_TAB);
            bot.delay(200);
            bot.keyRelease(KeyEvent.VK_TAB);
            bot.delay(159);
            bot.keyPress(KeyEvent.VK_1);
            bot.delay(179);
            bot.keyRelease(KeyEvent.VK_1);
        }catch(Exception e){
        }
    }
}

K出!

當然,簡單的答案不是在游戲中作弊嗎?

嘗試將e.printStackTrace()添加到catch塊中,看看是否在PC版本而不是筆記本電腦上存在錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM