如何在Windows中创建上下文菜单条目以使用管理员权限打开PowerShell?

时间:2015-03-05 00:23:09

标签: windows powershell windows-8.1

有一个很棒的community wiki comment演示了添加上下文菜单条目(但没有管理员权限)。如何更改注册表项或以下.reg文件以使用管理员权限打开PowerShell?

Windows Registry Editor Version 5.00

;
; Add context menu entry to Windows Explorer background
;
[HKEY_CLASSES_ROOT\Directory\Background\shell\powershell]
@="Open PowerShell window here"
"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT\Directory\Background\shell\powershell\command]
@="C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe -NoExit -Command Set-Location -LiteralPath '%V'"

;
; Add context menu entry to Windows Explorer folders
;
[HKEY_CLASSES_ROOT\Directory\shell\powershell]
@="Open PowerShell window here"
"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT\Directory\shell\powershell\command]
@="C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe -NoExit -Command Set-Location -LiteralPath '%V'"

;
; Add context menu entry to Windows Explorer drive icons
;
[HKEY_CLASSES_ROOT\Drive\shell\powershell]
@="Open PowerShell window here"
"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT\Drive\shell\powershell\command]
@="C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe -NoExit -Command Set-Location -LiteralPath '%V'"

2 个答案:

答案 0 :(得分:0)

解决方法:

每次强制PowerShell通过向位于以下位置的注册表项添加条目来以管理员身份打开:

HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers\

键名=路径 - 示例:

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe

价值数据:

RUNASADMIN



这不是我想要的方式,但它适用于我的目的。

答案 1 :(得分:0)

使用密钥 runas 会导致以管理员身份运行的任何命令。 您可以在下面看到我使用的部分注册表调整,或者您可以看到我在GitHub Gist上使用的完整 .reg 文件

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\runas]
@="Open elevated PowerShell here"
"Extended"=""
"Icon"="powershell.exe"
"NoWorkingDirectory"=""

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\shell\runas\command]
@="C:\\Windows\\system32\\WindowsPowerShell\\v1.0\\powershell.exe -NoExit -Command Set-Location -LiteralPath '%V'"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\background\shell\runas]
"Extended"=""
"NoWorkingDirectory"=""
@="Open elevated PowerShell here"
"Icon"="powershell.exe"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\background\shell\runas\command]
@="C:\\Windows\\system32\\WindowsPowerShell\\v1.0\\powershell.exe -NoExit -Command Set-Location -LiteralPath '%V'"