wild-wolf
Goto Top

Powershell Problem mit Get-WmiObject

Ein Hallo in die Runde.

Ich habe ein kleines Problem mit einem Powershell Script, was ich vor einiger Zeit geschrieben habe. Ich weiß nicht ob MS hier mit irgendeinem Update etwas geändert hat.

Ich habe folgende Zeile für die Exchange-Dienste erstellt:

Get-WmiObject win32_service | Where-Object {$_.Name -ilike "MSexch*" -or $_.Name -ilike "HostControllerService" -or $_.Name -ilike "wsbexchange" -or $_.Name -ilike "FMS" -or $_.Name -ilike "MSComplianceAudit" -or $_.Name -ilike "W3SVC" -or $_.Name -ilike "IISADMIN" -or $_.Name -ilike "WMSVC" -or $_.Name -ilike "w3logsvc"} | Set-Service -StartupType Automatic  

Get-WmiObject win32_service | Where-Object {$_.Name -ilike "MSExchangeImap*" -or $_.Name -ilike "MSExchangePop3*"} | Set-Service -StartupType Manual  

Bis vor einigen Monden hat es immer geklappt. Neuerdings erhalte ich aber folgende Meldung:

Get-WmiObject : Der angegebene Dienst kann nicht gestartet werden. Er ist deaktiviert oder nicht mit aktivierten
Geräten verbunden. (Ausnahme von HRESULT: 0x80070422)
In Zeile:1 Zeichen:1
+ Get-WmiObject win32_service | Where-Object {$_.Name -ilike "MSexch*"  ...  
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [Get-WmiObject], COMException
    + FullyQualifiedErrorId : GetWMICOMException,Microsoft.PowerShell.Commands.GetWmiObjectCommand

Weiß jemand wo das Problem ist?

Vielen Dank im voraus.

Content-ID: 11350906146

Url: https://administrator.de/contentid/11350906146

Ausgedruckt am: 22.11.2024 um 10:11 Uhr

8030021182
8030021182 20.11.2023, aktualisiert am 21.11.2023 um 12:24:48 Uhr
Goto Top
Hi.
Dienste einzeln auf Start-Funktion prüfen, kann sein das einer davon Probleme macht.
https://www.borncity.com/blog/2018/04/30/windows-fehler-0x80070422-bei-u ...
Und ja, es kann schon reichen die Startart zu verändern, wenn die Executable oder Teile des Services nicht mehr vorhanden sind läuft die Prüfung des Dienstes dann auf einen Fehler den du dann in Form dieser Fehlermeldung präsentiert bekommst.

Gruß Katrin.

p.s. Warum nicht Get-Service? Btw. Get-WmiObject ist deprecated und sollte man besser durch Get-CimInstance ersetzen.
p.s2 die like Vergleichsoperatoren sind per Default Case-Insensitive

Get-Service -Name MSexch*,HostControllerService,wsbexchange,FMS,MSComplianceAudit,W3SVC,IISADMIN,WMSVC,w3logsvc | Set-Service -StartupType Automatic