0

C/C++ 言語を使用した経験があります。しかし、私はゲーム(私の独立したソフトウェア)をプレイしています.2秒ごとにキー2を押すために、ゲームと対話するCプログラムを作成したいと思います。Space窓用です。

何か案は?

4

2 に答える 2

1

関数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);
于 2013-08-01T15:58:54.523 に答える
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++ を使用して、探しているウィンドウのプロパティを見つけることができます。これにより、検索するウィンドウ名が簡単にわかります。

于 2013-08-01T15:58:33.363 に答える