У меня проблема с использованием sendkeys - это Powershell. Я пытаюсь создать сценарий, который будет отправлять ключи: shift, w, a, s, d в игру. Код, который я пытаюсь сделать:
Add-Type -AssemblyName System.Windows.Forms
[System.Windows.Forms.SendKeys]::SendWait(+{w}{a}{s}{d});
Но когда я использую это, он просто отправляет «Wasd». Это не изменит движения, я вижу, что это было отправлено в игровой консоли.
Есть ли способ имитировать нажатия клавиш?
Это можно сделать для левой кнопки мыши, используя следующее:
$signature=@'
[DllImport("user32.dll",CharSet=CharSet.Auto, CallingConvention=CallingConvention.StdCall)]
public static extern void mouse_event(long dwFlags, long dx, long dy, long cButtons, long dwExtraInfo);
'@
$SendMouseClick = Add-Type -memberDefinition $signature -name "Win32MouseEventNew" -namespace Win32Functions -passThru
$SendMouseClick::mouse_event(0x00000002, 0, 0, 0, 0);
$SendMouseClick::mouse_event(0x00000004, 0, 0, 0, 0);
Есть что-то подобное с клавиатурой?