Я пытаюсь отправить ключ в приложение. Я протестировал значение Handlewindow, используя точки останова, чтобы понять, что я делаю с этим, но не могу найти решение. Если быть более точным, это небольшая игра, и когда я активирую игру в чате, там будет написан ключ, который я хочу отправить, но я хочу сделать его функциональным, когда я играю, чтобы использовать команды. В игре нет охранника или защиты.
Вот мой код:
[DllImport("user32.dll")]
static extern bool PostMessage(IntPtr hWnd, uint Msg, int wParam, int lParam);
const uint WM_KEYDOWN = 0x0100;
private void button1_Click(object sender, EventArgs e)
{
string pName = textBox1.Text;
//Get Processes
Process[] processes = Process.GetProcessesByName(pName);
//Main part
foreach (Process p in processes)
if (p.ProcessName == (string)pName)
{
PostMessage(p.MainWindowHandle, WM_KEYDOWN, (int)Keys.W, 0);
}
}
Как я уже сказал, его можно успешно отправить 1000000 раз, но ничего не происходит.
Есть ли другой способ, как я могу отправить ключи в приложение Windows, которое работает в свернутом или скрытом виде? Это должно быть только отправить в мое приложение.