C/C++ 言語を使用した経験があります。しかし、私はゲーム(私の独立したソフトウェア)をプレイしています.2秒ごとにキー2を押すために、ゲームと対話するCプログラムを作成したいと思います。Space窓用です。
何か案は?
関数SendInput
と を見てくださいkeybd_event
。これらは、キーを押すように Windows に指示する関数です。
あとは、2 秒ごとにスリープするループを作成するだけです。 keybd_event
は古い規約ですが、私がよく知っている規約です。
VOID WINAPI keybd_event(
_In_ BYTE bVk,
_In_ BYTE bScan,
_In_ DWORD dwFlags,
_In_ ULONG_PTR dwExtraInfo
);
以下は、のプレスをシミュレートしますNumLock
// Simulate a key press
keybd_event( VK_NUMLOCK, 0x45, KEYEVENTF_EXTENDEDKEY | 0, 0);
// Simulate a key release
keybd_event( VK_NUMLOCK, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);
Windows では、これは非常に簡単です。C++ コンソール プログラムを作成します。プログラム内で、Windows のすべての「ウィンドウ」を検索する必要があります。Microsoft では、これらの Windows ウィンドウ ハンドル (HWND) を呼び出します。FindWindowEx でそれらすべてを検索できます: http://msdn.microsoft.com/en-us/library/windows/desktop/ms633500(v=vs.85).aspx。ウィンドウを(名前で)見つけたら、ウィンドウにHWNDキープレスを送信できます。これは SendMessage(); で行われます。これを 2 秒ごとにループさせれば完了です。
Visual Studio の Spy++ を使用して、探しているウィンドウのプロパティを見つけることができます。これにより、検索するウィンドウ名が簡単にわかります。