C#からWindows APIを叩いてマウスポインタを移動させる方法を紹介する。
SendInput関数を使う方法もあるけど、複雑でしかも使い勝手が悪いのでSetCursorPos関数を使う方法で考える。
こっちの方が断然カンタン。
まず、SetCursorPos関数を始めとしたネイティブコードをC#で使う場合、“CA1060″の警告「CA1060: P/Invoke を NativeMethods クラスに移動します」を回避するために、NativeMethodsクラスをつくり、そこでDllImportするとよい。
次のように。
そして、このメソッドを所望の場所で次のように使うことで、マウスポインタをプログラムから移動できる。
この例では、スクリーンの左端から123px、上端から234pxの位置にマウスポインタを移動する。
関連ページ:マウス・キーボード操作の自動化機能をつくろう