2021-09-04

SikuliXを管理者権限で実行する

 SikuliXで操作をしようとしらた以下エラーが発生。どうも対象ウィンドウを操作するための権限がない模様。 SikuliXを管理者で実行することで解決できたので手順を残しておきます。

[error] RobotDesktop: checkMousePosition: should be L[719,118]@S(0) - but is not!

Possible cause in case you did not touch the mouse while script was running:

 Mouse actions are blocked generally or by the frontmost application.

You might try to run the SikuliX stuff as admin.




手順は以下

  1. コマンドプロンプトを管理者権限で起動
  2. コマンドプロンプトからSikuliXを起動
この手順で起動するとSikuliXが管理者権限で起動でき、上記エラーが解消できました。
以下でそれぞれの手順をまとめます。

コマンドプロンプトを管理者権限で起動

コマンドプロンプトを管理者権限で起動する手順はいくつかあります。

方法1.コマンドプロンプトのショートカット右クリックメニューから「管理者として実行」を選択して起動する


方法2.コマンドプロンプトのショートカットプロパティから管理者として実行されるようにオプションを設定してから起動する


この手順で起動すると管理者権限をもったコマンドプロンプトが立ち上がります。このコマンドプロンプトからSikuliXを起動すると管理者権限で動作します。



コマンドプロンプトからSikuliXを起動

コマンドプロンプトからSikuliXを起動するには、sikulixide-*.jarがあるディレクトリに移動して以下コマンドを実行で起動します。

java -jar sikulixide-2.0.4.jar


まとめ 

SikuliXで「[error] RobotDesktop: checkMousePosition」のエラーがでたら管理者権限で実行すると解消するかもしれません。