似乎Windows在ps1文件的内容菜单中显示“使用PowerShell运行”的唯一时间是默认应用程序是记事本。如果我将默认应用程序更改为PowerShell ISE(或任何其他编辑器),则不会出现“使用PowerShell运行”上下文项。
Windows 7 Professional SP1,WMF 4.0
答案 0 :(得分:3)
在Windows 10中按“开始”,然后键入“默认应用程序设置”,单击“默认应用程序设置”。出现一个新窗口“按文件类型选择默认应用程序”。滚动到“.ps1”。单击当前的应用程序图标,然后选择记事本。
正如elmonty所说,这将在右键单击ps1文件时恢复“使用PowerShell运行”上下文菜单条目。
您可以将以下内容复制到文本文件中并导入注册表。这将打开PowerShell控制台并在双击ps1文件时执行脚本。
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Microsoft.PowerShellScript.1\Shell\Open\Command]
@="\"C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe\" \"-Command\" \"if((Get-ExecutionPolicy ) -ne 'AllSigned') { Set-ExecutionPolicy -Scope Process Bypass }; & '%1'\""
或打开注册表,导航至:
[HKEY_CLASSES_ROOT\Microsoft.PowerShellScript.1\Shell\Open\Command]
doulbe单击(默认)字符串条目并在“值数据:”中输入以下内容:
"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" "-Command" "if((Get-ExecutionPolicy ) -ne 'AllSigned') { Set-ExecutionPolicy -Scope Process Bypass }; & '%1'"
答案 1 :(得分:1)
我找到了答案。您必须将默认应用程序设置回记事本。这将恢复“使用PowerShell运行”上下文项。接下来,您必须直接在注册表中编辑“打开方式”应用程序,此处:
\ HKEY_CLASSES_ROOT \ Microsoft.PowerShellScript.1 \壳牌\打开\命令
将值更改为:
“C:\ Windows \ System32 \ WindowsPowerShell \ v1.0 \ powershell_ise.exe”“%1”
或者您可以将其更改为您选择的编辑器。