#windows #powershell #key-bindings
Вопрос:
Я нашел фрагмент, который я изменил, чтобы найти активное окно и закрыть его с помощью скрипта ps1. Моя цель — сделать привязку моего ключа такой же, как в Linux, используя hotkeyD.
У меня есть три проблемы со сценарием. Во-первых, он не закрывает активное окно проводника, если я просматриваю файлы. Как бы мне это сделать?
Вторая проблема заключается в следующем. Я бы хотел, чтобы winfetch выполнялся в терминале, как только я его запускаю. Однако, если я добавлю его в свой профиль powershell. Из-за этого выполнение скрипта занимает больше времени. Как я могу заставить скрипты пропускать код, который у меня есть в моем профиле powershell в документах?
В-третьих, скорость. Сценарий не выполняется мгновенно. Как будто нажатие alt F4 было бы. Для его активации требуется секунда или две. Как бы мне ускорить его?
Спасибо. С нетерпением ждем ответов. Вот сценарий.
[CmdletBinding()]
Param(
)
Add-Type @"
using System;
using System.Runtime.InteropServices;
public class UserWindows {
[DllImport("user32.dll")]
public static extern IntPtr GetForegroundWindow();
}
"@
try {
$ActiveHandle = [UserWindows]::GetForegroundWindow()
$Process = Get-Process | ? {$_.MainWindowHandle -eq $activeHandle}
$Process | Select ProcessName, @{Name="AppTitle";Expression= {($_.CloseMainWindow())}}
} catch {
Write-Error "Failed to get active Window details. More Info: $_"
}
exit
Комментарии:
1. Вот ответ на ваш 1-й вопрос. Длительное выполнение может быть вызвано антивирусной системой.
2. К сожалению, нет. Закрытие Manlwarebytes занимает столько же времени. Вопрос первый. Скрипт не закрывает файловую систему Windows. Это закроет все остальное, но.
Ответ №1:
Этот тип задачи (т.Е. Создать горячую клавишу, которая закрывает активное окно) выглядит как задание, более подходящее для AutoHotkey, чем Powershell.
Например, это можно сделать в AutoHotkey с помощью:
#d::WinClose A ;remaps Super d to a "close the Active Window" command
Если вам нужна дополнительная информация о том, как настроить AHK
или как, в частности, работает этот скрипт, не стесняйтесь обращаться к lmk.
Комментарии:
1. Спасибо, но я хочу использовать hotkeyD. Проблема с AHK заключается в том, что большую часть времени. Оно обнаружено античитом игр. Я использую свой компьютер с Windows для игр.
2. Не могли бы вы пояснить, что вы имеете в виду
hotkeyD
?
Ответ №2:
Проект github был обновлен, чтобы включить функцию закрытия окна. Кажется, эмулируя клавиши alt F4.