Одновременное нажатие нескольких клавиш для клавиши Windows lo go + Alt + PrtScn в PowerShell? - PullRequest
0 голосов
/ 31 марта 2020

Я попробовал приведенный ниже код по указанной ссылке, но не смог нажать эти клавиши одновременно.

Нужны ли какие-либо изменения?

$code = @'
namespace SendTheKeys {
  class SendIt {
   public static void Main(string[] args) {
    [System.Runtime.InteropServices.DllImport("user32.dll")]
        private static extern void keybd_event(byte bVk, byte bScan, int dwFlags, int dwExtraInfo);

        private const int KEYEVENTF_EXTENDEDKEY = 1;
        private const int KEYEVENTF_KEYUP = 2;

        public static void KeyDown(Keys vKey)
        {
            keybd_event((byte)vKey, 0, KEYEVENTF_EXTENDEDKEY, 0);
        }

        public static void KeyUp(Keys vKey)
        {
            keybd_event((byte)vKey, 0, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);
        }
  }
 }
}
'@
Add-Type -TypeDefinition $source -ReferencedAssemblies "System.Windows.Forms"
[KeyboardSend.KeyboardSend]::KeyDown("LWin")
[KeyboardSend.KeyboardSend]::KeyDown("Alt") 
[KeyboardSend.KeyboardSend]::KeyDown("PrintScreen")
[KeyboardSend.KeyboardSend]::KeyUp("LWin") 
[KeyboardSend.KeyboardSend]::KeyUp("Alt")

1 Ответ

0 голосов
/ 31 марта 2020

посмотрите на этот код: https://github.com/stefanstranger/PowerShell/blob/master/WinKeys.ps1

Я полагаю, вы должны иметь возможность использовать функцию "Win", например Win "%{PRTSC}", чтобы получить то, что вы хотите

...