убить процесс, если клавиша Esc нажата с помощью powershell - PullRequest
0 голосов
/ 31 декабря 2018

возможно ли убить процесс, если нажата клавиша Esc?Я видел, как кто-то обнаружил ключ, но для другого подхода, и я не знаю, как изменить его, чтобы он служил моей цели

    $continue = $true
while($continue)
{

    if ([console]::KeyAvailable)
    {
        echo "Toggle with F12";
        $x = [System.Console]::ReadKey() 

        switch ( $x.key)
        {
            F12 { $continue = $false }
        }
    } 
    else
    {
        $wsh = New-Object -ComObject WScript.Shell
        $wsh.SendKeys('{CAPSLOCK}')
        sleep 1
        [System.Runtime.Interopservices.Marshal]::ReleaseComObject($wsh)| out-null
        Remove-Variable wsh
    }    
}

Ответы [ 2 ]

0 голосов
/ 31 декабря 2018

Спасибо HariHaran за быстрый ответ!вот как вы закрываете блокнот с помощью клавиши Esc в powershell

    $key = [console]::ReadKey()
write-host $key.key
if ($key.Key -eq '27') {
  "Pressed Esc"
Stop-Process -Name "notepad"
}
0 голосов
/ 31 декабря 2018
$key = [console]::ReadKey()
write-host $key.key
if ($key.Key -eq '27') {
  "Pressed Esc"
   Do something 
}
...