Tau*_*vis 2 registry powershell
我有一个关于从注册表项 HKU (HKEY_USERS) 中删除的问题。如果我用 powershell 运行它,我会收到一个错误:
Invoke-Command -ComputerName $inputPC -ScriptBlock { Remove-Item -Path 'HKU:\S-1-5-25\Software\Microsoft\Windows\CurrentVersion\RunOnce'}
Run Code Online (Sandbox Code Playgroud)
错误:
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
Run Code Online (Sandbox Code Playgroud)
但是,如果HKU:我将HKLM:它交换为例如它可以工作并删除注册表项,我该如何访问HKU?我尝试了不同的方法来删除注册表项,并且所有方法都相同,但它们都没有映射 HKU 注册表项。
默认情况下,仅定义以下引用注册表位置的 PowerShell 驱动器:
PS> Get-PSDrive -PSProvider Registry
Name Used (GB) Free (GB) Provider Root CurrentLocation
---- --------- --------- -------- ---- ---------------
HKCU Registry HKEY_CURRENT_USER
HKLM Registry HKEY_LOCAL_MACHINE
Run Code Online (Sandbox Code Playgroud)
也就是说,只有驱动器HKCU:和HKLM:默认存在。
为了访问HKEY_USERS配置单元中的密钥,您有两个选择:
HKUPowerShell驱动器使用New-PSDrive,如theadzik建议在评论,尽管这可能并不值得(你的情况,你就必须做到这一点的脚本块内传递给Invoke-Command):# Define drive HKU:
New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS
# Now you can use HKU:\... paths
Run Code Online (Sandbox Code Playgroud)
registry::与本机注册表路径一起使用,这对于临时使用更简单:# E.g.
Get-ChildItem registry::HKEY_USERS\.DEFAULT
Run Code Online (Sandbox Code Playgroud)
在您的命令的上下文中:
# Define drive HKU:
New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS
# Now you can use HKU:\... paths
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4671 次 |
| 最近记录: |