首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法用powershell映射香港大学注册表单元

无法用powershell映射香港大学注册表单元
EN

Stack Overflow用户
提问于 2019-09-23 10:01:34
回答 1查看 9.2K关注 0票数 6

我有一个关于删除注册密钥港大(HKEY_USERS)的问题。如果我用powershell运行这个程序,我会得到一个错误:

代码语言:javascript
复制
Invoke-Command -ComputerName $inputPC -ScriptBlock { Remove-Item -Path 'HKU:\S-1-5-25\Software\Microsoft\Windows\CurrentVersion\RunOnce'}

错误:

代码语言:javascript
复制
Cannot find drive. A drive with the name 'HKU' does not exist.
    + CategoryInfo          : ObjectNotFound: (HKU:String) [Remove-Item], DriveNotFoundException
    + FullyQualifiedErrorId : DriveNotFound,Microsoft.PowerShell.Commands.RemoveItemCommand
    + PSComputerName        : clt64792

但是,如果对于HKU:,我将它交换为HKLM: (例如,它可以工作并删除注册表项),我如何访问HKU?我尝试过不同的方法来删除注册表项,而且它们都是相同的,但是没有一个是映射HKU注册表项的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-23 13:38:01

默认情况下,只定义以下引用注册表位置的PowerShell驱动器:

代码语言:javascript
复制
PS> Get-PSDrive -PSProvider Registry

Name           Used (GB)     Free (GB) Provider      Root                                                                                                           CurrentLocation
----           ---------     --------- --------      ----                                                                                                           ---------------
HKCU                                   Registry      HKEY_CURRENT_USER                                                                                                             
HKLM                                   Registry      HKEY_LOCAL_MACHINE                                                                                                            

也就是说,在默认情况下,只驱动 HKLM: HKLM:

为了访问HKEY_USERS单元中的密钥,您有两个选项:

  • Define是一个使用New-PSDrive的自定义 PowerShell驱动器,正如theadzik在评论中所建议的那样,尽管这可能不值得(在您的例子中,您必须在传递给Invoke-Command):

的脚本块中这样做。

代码语言:javascript
复制
# Define drive HKU:
New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS
# Now you can use HKU:\... paths

  • Use provider前缀 registry:: 和本机注册表路径,这对于ad use

来说更简单。

代码语言:javascript
复制
# E.g.
Get-ChildItem registry::HKEY_USERS\.DEFAULT

在您的命令中:

代码语言:javascript
复制
Invoke-Command -ComputerName $inputPC -ScriptBlock { 
  Remove-Item 'registry::HKEY_USERS\S-1-5-25\Software\Microsoft\Windows\CurrentVersion\RunOnce'
}
票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58059948

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档