如何使用PowerShell进行远程注册表更改?
我已经测试了以下PowerShell注册表设置,并且设置正确。 有人能告诉我远程计算机怎么做吗如何使用PowerShell进行远程注册表更改?,powershell,powershell-remoting,remote-registry,Powershell,Powershell Remoting,Remote Registry,我已经测试了以下PowerShell注册表设置,并且设置正确。 有人能告诉我远程计算机怎么做吗 New-Item -itemType String HKLM:\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\TrapConfiguration\Server0ps -Value "MY.DOMAIN.COM" New-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Services\SNMP\Paramet
New-Item -itemType String HKLM:\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\TrapConfiguration\Server0ps -Value "MY.DOMAIN.COM"
New-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\PermittedManagers -Name 1 -Value "whatever"
Set-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\ValidCommunities -Name "Hello" -Value 4
Set-ItemProperty HKLM:\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\ValidCommunities -Name "There" -Value 8
以此为例:
$reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine', $computername )
$regKey= $reg.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",$true)
$regKey.SetValue("New_Valuename_String","New_Valuedata",[Microsoft.Win32.RegistryValueKind]::String)
要创建新密钥,您需要将powershell远程处理与
invoke命令一起用于新建项
cmdlet。您可能需要检查powershell 3.0的版本(支持x86.x64,) 如果您只想删除密钥
$exchangeServers = @("xxxxx");
$hive = [Microsoft.Win32.RegistryHive]::LocalMachine;
$key = "SYSTEM\CurrentControlSet\Control\Lsa";
foreach ($exchangeServer in $exchangeServers)
{
$regBaseKey = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey($hive, $exchangeServer.ToString());
$regKeys = $regBaseKey.OpenSubKey($key,$true);
$beforeVal = $regKeys.GetValue("DisableLoopbackCheck");
Write-Host $exchangeServer " - " $beforeVal;
$regKeys.DeleteValue("DisableLoopbackCheck"); # a try catch can be placed here if there is a concern the key won't exist
$keyNames = $regKeys.GetSubKeyNames();
$afterVal = $regKeys.GetValue("DisableLoopbackCheck");
if ($afterVal -eq $null)
{
Write-Host $exchangeServer " - deleted" -ForegroundColor DarkGreen;
}
else
{
Write-Host $exchangeServer " - " $afterVal -ForegroundColor Red;
}
Write-Host " ";
}
看看这里(伟大的Shay Levi作品!):是的,但遗憾的是,我不想使用第三方模块。