C#でマウスポインタを移動させる方法

.NET Core, .NET Framework, C#, Windows API, 働き方改革, 自動化

C#からWindows APIを叩いてマウスポインタを移動させる方法を紹介する。

SendInput関数を使う方法もあるけど、複雑でしかも使い勝手が悪いのでSetCursorPos関数を使う方法で考える。

こっちの方が断然カンタン。

まず、SetCursorPos関数を始めとしたネイティブコードをC#で使う場合、"CA1060"の警告「CA1060: P/Invoke を NativeMethods クラスに移動します」を回避するために、NativeMethodsクラスをつくり、そこでDllImportするとよい。

次のように。

そして、このメソッドを所望の場所で次のように使うことで、マウスポインタをプログラムから移動できる。

この例では、スクリーンの左端から123px、上端から234pxの位置にマウスポインタを移動する。


関連ページ:マウス・キーボード操作の自動化機能をつくろう