derhoeppi
Goto Top

Windows 10 Powershell Logon Script

Hallo,

ich habe ein einfaches Powershell Script das ich via GPO oder Scheduled Task ausführen möchte. In dem Script steht nicht mehr als
Get-AppxProvisioningPackage -Online | Remove-AppxProvisioningPackage -Online
 

Wenn ich dies als lokaler Admin ausführe funktioniert das Skript wie es soll. Packe ich es jedoch in eine GPO (Bereich Computer) wo es als Startscript ausgeführt wird, entfernt es keine Apps. Da es als Startscript ausgeführt wird und damit als Systembenutzer benötige ich doch keine Änderung der ExecutionPolicy von Powershell.

Habt ihr eine Idee, wie ich diesen Einzeiler via GPO ausführen kann. Ein Test als Scheduled Task war ebenso negativ.

Gruß
derhoeppi

Content-ID: 328384

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

Ausgedruckt am: 24.11.2024 um 02:11 Uhr

SYS64738
SYS64738 03.02.2017 um 12:00:44 Uhr
Goto Top
Ich hatte mal ein ähnliches Problem, nachdem ich die Benutzerkontensteuerung deaktiviert habe, ging es. In wie fern das in deiner Umgebung Sinn macht, kann ich nicht beurteilen.
132272
132272 03.02.2017 aktualisiert um 12:42:16 Uhr
Goto Top
Zitat von @derhoeppi:
Da es als Startscript ausgeführt wird und damit als Systembenutzer benötige ich doch keine Änderung der ExecutionPolicy von Powershell.
Doch muss sie! Besser man nutzt Signierung der Skripte.
Habt ihr eine Idee, wie ich diesen Einzeiler via GPO ausführen kann. Ein Test als Scheduled Task war ebenso negativ.
Hier muss der Haken bei Höchste Berechtigung .... gesetzt sein, da das elevated gestartet werden muss

Get-AppxProvisioningPackage -Online | Remove-AppxProvisioningPackage -Online
Das wird dir später zwar Probleme machen wenn du alle entfernst aber das ist ja dann dein Problem face-wink

Gruß
derhoeppi
derhoeppi 03.02.2017 um 17:37:23 Uhr
Goto Top
Hi,

ich habe jetzt mal via GPO in der Computerkonfiguration eingestellt, dass die Powershell Alle Skripte ausführen soll. Trotzdem führt er den Einzeiler nicht aus.
Kann ich das irgendwie näher troubleshootn?

Gruß
derhoeppi
132272
132272 03.02.2017 aktualisiert um 17:39:04 Uhr
Goto Top
Kann ich das irgendwie näher troubleshootn?
Start-Transcript
132272
132272 03.02.2017 aktualisiert um 18:06:30 Uhr
Goto Top
Du weist aber hoffentlich schon das Startskripte bei Windows 10 > 5-10 Minuten später ausgeführt werden können und das bei aktiviertem Schnellstart und Herunterfahren und Hochfahren diese nicht ausgeführt werden (nur ein "Neustart" ist ein richtiger Neustart mit triggern der Startskripte) ?!
Beides lässt sich per GPO anpassen.
derhoeppi
derhoeppi 04.02.2017 um 18:06:20 Uhr
Goto Top
Neustart wurde natürlich durchgeführt nachdem manuell ein forcieren der GPO's durchgeführt wurde. Trotzdem wurden die Apps nicht entfernt.
132272
132272 04.02.2017 aktualisiert um 18:12:33 Uhr
Goto Top
Per Startskript habe ich das hier testweise nicht ans laufen bekommen, scheint als gäbe es hier eine DISM-Beschränkung im Local-System-Kontext denn es kommt laut LOG eine COM-Exception die besagt das die Apps nicht abgerufen werden können weil DISM keinen Zugriff bekommt.
Per Aufgabenplanung dagegen funktioniert es wunderbar.
BTW. ich würde das schon vorher aus dem Image entfernen und dann erst auf die Rechner deployen, bzw. im MDT mit einer Task-Sequence abfackeln.
derhoeppi
derhoeppi 04.02.2017 um 19:49:06 Uhr
Goto Top
Das mit der Task-Sequence ist wahrscheinlich die bessere Alternative. Das werde ich am Montag mal testen. Im Image mag ich das nicht platzieren, weil der nächste der ein Image erstellt, wird es vielleicht modifizieren oder vergessen. Ich habe auch vor dies immer wieder mal durchzuführen, wenn z.B. ein Feature Upgrade ansteht oder ähnliches. Aus diesem Grund habe ich an eine GPO gedacht, damit die Abarbeitung automatisch geschieht.
derhoeppi
derhoeppi 06.02.2017 um 13:18:48 Uhr
Goto Top
Ich teste gerade die Task-Sequence. Dabei habe ich jedoch ein Problem. Mir steht derzeit noch ein SCCM2007R3 zur Verfügung. Nachdem ich das Package angelegt habe, habe ich der Task-Sequence erstellt. Wie aber muss nun der Commandlineaufruf aussehen?

Weil er "powershell.exe -executionpolicy Bypass -file .\Skript.ps1" nicht ausgeführt hat, habe ich nun "cmd.exe /c "powershell.exe -executionpolicy Bypass -file .\Skript.ps1"" versucht. Leider führt er das nicht mit dem entsprechenden Account aus. Wenn ich es lokal mit dem Benutzer der Task-Sequence ausführe, läuft es. Wie sah denn bei deinem Test der Aufruf der Task-Sequence aus.