マウスを上に動かし続ける小さなプログラムを作成するにはどうすればよいですか?
知りたい人にとっては、ttは小さな1回限りのことです。私はスターウォーズザフォースアンリーシュドをプレイしています。コンソールバージョンでは、右スティックを上向きに保持します。PCの不良コンソールポートで、マウスを使用しています。多分あなたは私の欲求不満を理解することができます。
これは、CSharpではなく、機械プログラミングの問題です。
プログラムを実行するには、ドリルが接続されている電源タップの電源スイッチを切り替えます。
編集:よりポータブルなコードが必要な場合は、コードレスドリルを使用してください。バッテリーは含まれていません。
SetCursorPos
アンマネージコードでこれを行います。同じことを行うための.NETメソッドがあるかどうかはわかりませんが、いつでもcom相互運用機能を使用できます。User32.dllにあります
[DllImport("user32.dll")]
static extern bool SetCursorPos(int X, int Y);
小さなグーグルはこれを.netと同等のSetCursorPosとして生成します
System.Windows.Form.Cursor.Position
ゲームはわかりませんが、内部的にウィンドウがマウス移動のメッセージを送信します。これらは、SendMessage()
API呼び出しによってアプリケーションに送信されます。C#では、同じWin32 APIを直接使用する必要がありますか、それともイベントを作成/送信する必要がありますか?ただし、実行中の別のアプリケーションにイベントを送信する方法がわかりません。
C#で定義されたSendMessage()Win32 API呼び出しは、次のようになります。
[DllImport("user32.dll")]
public static extern int SendMessage(
int hWnd, // handle to destination window
uint Msg, // message
long wParam, // first message parameter
long lParam // second message parameter
);