複数のプロセスにキーストロークを送信したい。たとえば、「1」を押すと、「1」〜「3」のメモ帳ウィンドウが送信されます。フリストは、私がメモ帳にキーストロークを送信するために試してみたいが、それはHWNDに失敗します。"SendMessage"をC++の3つの異なるプロセスに
//HANDLE hWin;
HWND windowHandle = FindWindowA(NULL, "Notepad"); //Can’t find a proccess
//Send a key
if(windowHandle) //This one fails
{
while(true)
{
if(GetAsyncKeyState(VK_F12) != 0)
{
SendMessageA(windowHandle, WM_KEYDOWN, VK_NUMPAD1, 0);
Sleep(1000);
SendMessageA(windowHandle, WM_KEYUP, VK_NUMPAD1, 0);
}
Sleep(100);
}
}
しかし、「FindWindowを」方法は私のプログラムのために十分ではありません。同じ名前の3つの異なるプロセスを取得する方法もありません。だから私は3つの異なるプロセスに3つのハンドルを同じ名前で作ることができますか?そして、どのようにキーをプロセスに送ることができますか?
メモ帳のウィンドウタイトルは通常「無題 - メモ帳」です。 SendInputを使うほうがよいでしょう。 –