Если у меня есть сценарий PowerShell с именем myscript.ps1
и он находится в переменной PATH, я хотел бы иметь возможность нажать Windows + r, ввести "myscript" и нажать клавишу ввода. В настоящее время требуется, чтобы я напечатал myscript.ps1
, и он работает нормально.
Я нашел несколько ответов, в которых предлагались ftype
, assoc
и переменная среды PATHEXT
, но они влияют только на сценарии, запускаемые из командной строки или PowerShell, а не из командной строки explore.exe.
Я предполагаю, что есть некоторые настройки реестра, но я не знаю, что искать, так как fileext
имеет сотни записей. Я также искал .bat
так как пакетные файлы работают автоматически, но я не нашел ничего очевидного.
Я подумал, что нашел его в HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\KindMap
, добавив значение .ps1 и установив его в качестве program
.bat, .cmd, .com и .exe, все они настроены так, что Кстати, но без игры в кости (даже после перезагрузки компьютера).
Я также заметил, что для файлов .bat, .cmd, .exe, .lnk и .msi каждый из них имел HKCR\<app-handler-id>\shellex\PropertySheetHandlers\ShimLayer Property Page
установленный в {513D916F-2A8E-4F51-AEAB-0CBC76FB1AF8}
, но добавить это в HKCR\Microsoft.Powershell.1
тоже не стоит.