Hallo Tweakers,
Ik moet op de zaak de registry value van enkele tientallen servers aanpassen. Als ik dat met de hand moet doen wordt ik gek, dus ik denk ik ga iets in PowerShell maken. Nu ben ik nog niet erg bedreven in PowerShell maar ik had het volgende bedacht:
Opzich werkt dit prima. Het script vraagt netjes om het wachtwoord van de user, er wordt een PSSession opgezet en de service wordt hertstart. Dit gebeurd voor elke server in het tekstbestand.
Enige probleem is de volgende regel:
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Client Service' -Name DServer -Value $deploymentserver
Deze wijziging wordt niet in het register doorgevoerd. Het vreemde is, dat als ik dit commando in de PowerShell console aftrap, dat de registry value wel wordt aangepast.
Het iemand enig idee hoe dit kan? Op internet kon ik er niet zo snel iets over vinden.
Ik heb ook geprobeerd om de value niet via een parameter te zetten maar direct, maar dat maakt ook niets uit. Ik heb gewoon admin rechten op de server en de PowerShell ISE is ook met administrator rechten opgestart.
Misschien is het iets heel simpels wat ik nu gewoon over het hoofd zie
Alvast bedankt!
p.s. ik heb het script hier iets versimpeld omwille de leesbaarheid en vertrouwelijkheid.
Ik moet op de zaak de registry value van enkele tientallen servers aanpassen. Als ik dat met de hand moet doen wordt ik gek, dus ik denk ik ga iets in PowerShell maken. Nu ben ik nog niet erg bedreven in PowerShell maar ik had het volgende bedacht:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
| $deploymentserver = "DEPLOYMENT.COMPANY.LOCAL"
$hostnames = (Get-Content -Path ".\hostnames.txt")
$credential = Get-Credential company\admin1
foreach ($hostname in $hostnames)
{
Enter-PSSession $hostname -Credential $credential
Set-Location 'HKLM:\SOFTWARE\Client Service'
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Client Service' -Name DServer -Value $deploymentserver
Get-Service -Name "Deployment Agent" | Restart-Service
Exit-PSSession
} |
Opzich werkt dit prima. Het script vraagt netjes om het wachtwoord van de user, er wordt een PSSession opgezet en de service wordt hertstart. Dit gebeurd voor elke server in het tekstbestand.
Enige probleem is de volgende regel:
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Client Service' -Name DServer -Value $deploymentserver
Deze wijziging wordt niet in het register doorgevoerd. Het vreemde is, dat als ik dit commando in de PowerShell console aftrap, dat de registry value wel wordt aangepast.
Het iemand enig idee hoe dit kan? Op internet kon ik er niet zo snel iets over vinden.
Ik heb ook geprobeerd om de value niet via een parameter te zetten maar direct, maar dat maakt ook niets uit. Ik heb gewoon admin rechten op de server en de PowerShell ISE is ook met administrator rechten opgestart.
Misschien is het iets heel simpels wat ik nu gewoon over het hoofd zie
Alvast bedankt!
p.s. ik heb het script hier iets versimpeld omwille de leesbaarheid en vertrouwelijkheid.