Ich verwende Powershell (v4) auf einer Windows7-Box. Ich konnte bis gestern (2017-04-12) einen Befehl zum Stoppen des Computers ausführen, um meinen Computer herunterzufahren.
Heute: Ich kann das nicht. Ich erhalte diese Antwort: ('Zaphod' ist der Hostname):
Dies geschieht, wenn ich Powershell mit Nicht-Administratorrechten starte. oder wenn ich "Als Administrator ausführen" verwende (und es als Administrator ausgeführt wird; da ich das Popup "Benutzerkontensteuerung" erhalte, wenn ich dies tue).
Auf meinem Rechner wurden heute einige automatische Windows-Updates vorgenommen - vielleicht sind diese irgendwie verantwortlich?
Seltsam; 'restart-computer' funktioniert .
Ist das eine bekannte Sache? Kann ich meine Berechtigungen irgendwie zurückbekommen?
Weitere Forschung folgt:
EDIT : Wenn ich den Befehl mit dem ‚-AsJob‘ Flag ausgeben - es tut Arbeit:
stop-computer -asjob # this works !
Ich habe den folgenden Befehl ausgegeben, um Hilfe zu erhalten:
get-help Stop-Computer -full
Das Flag 'Authentication' ist wie folgt definiert:
Authentication <AuthenticationLevel> Specifies the authentication level that is used for the WMI connection. (Stop-Computer uses WMI.) The default value is Packet. Valid values are: Unchanged: The authentication level is the same as the previous command. Default: Windows Authentication. None: No COM authentication. Connect: Connect-level COM authentication. Call: Call-level COM authentication. Packet: Packet-level COM authentication. PacketIntegrity: Packet Integrity-level COM authentication. PacketPrivacy: Packet Privacy-level COM authentication. [...]
So verwirrend ist die "Standard" -Authentifizierung anscheinend "Paket"; Das Flag zum Wechseln zu 'Windows-Authentifizierung' wird jedoch als 'Standard' bezeichnet.
Auf jeden Fall; Keines der Flags erlaubt es mir, den Computer herunterzufahren. Ich erhalte eine geringfügige Abweichung des Fehlers, wenn ich "None" verwende:
stop-computer : Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED)) At line:1 char:1 + stop-computer -Authentication None + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (:) [Stop-Computer], UnauthorizedAccessException + FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.StopComputerCommand
Ich habe auch das Tracing eingeschaltet:
Set-PSDebug -Trace 2
Jetzt bekomme ich das; aber ich weiß nicht, was ich davon halten soll: