Я пытаюсь смоделировать нажатие клавиш и ввод текста на виртуальной машине, не выводя ее на передний план, чтобы я мог выполнять свою другую работу без перерыва.Я использую API InputSimulator для Visual Studio.
Я пытался использовать
[DllImport("user32.dll")]
public static extern IntPtr PostMessage(IntPtr hWnd, uint Msg);
Я пробовал это с именем процесса и с именем Windows, и я не могу получитьэто работает.
Было бы замечательно, если бы это работало, потому что сейчас нет проблем с отправкой нажатий клавиш в активное окно, но я не могу заставить его работать в фоновом окне.
РЕДАКТИРОВАТЬ:
Это пример попытки использовать PostMessage.
string processName = "myprocessname";
Process[] processList = Process.GetProcesses();
foreach (Process P in processList)
{
if (P.ProcessName.Equals(processName))
{
IntPtr myprocess = P.MainWindowHandle;
PostMessage(myprocess, InputSimulator.KeyPress(VirtualKeyCode.VK_A);
}
}