Я пытаюсь создать консольное приложение, которое отправляет комбинации клавиш другой запущенной программе, такие комбинации, как Ctrl + S и Alt + F4 . Программа заработала, но когда я не вошел в RD, программа перестала работать. Я предполагаю, что это связано с тем, что текущее решение использует следующее, чтобы сфокусировать другое приложение:
[DllImport("user32.dll")]
public static extern int SetForegroundWindow(IntPtr hWnd);
Для отправки команд клавиатуры используются фреймворк / библиотека WindowsInput
и WindowsInput.Native
.
Есть ли способ вместо того, чтобы фокусировать приложение, непосредственно находить запущенный процесс и оттуда отправлять в комбинации клавиш?