phatair
Goto Top

New Outlook unter Windows 11 automatisiert per PowerShell deinstallieren

Hallo zusammen,

wir wollen auf unseren Windows 11 23H2 Clients das neue Outlook deinstallieren, dass ja jetzt mit dem neuen Windows CU automatisch installiert wird.

Hier gibt es von MS ja folgenden Beitrag
https://learn.microsoft.com/en-us/microsoft-365-apps/outlook/get-started ...

Hier wird im Abschnitt auch erklärt das die Installation unter Win 11 nicht blockiert werden kann, aber nach einer Deinstallation wird es nicht mehr installiert.

Hier wird folgender Powershell Befehl verwendet
Remove-AppxProvisionedPackage -AllUsers -Online -PackageName (Get-AppxPackage Microsoft.OutlookForWindows).PackageFullName

Führe ich diesen Befehl als angemeldeter Administrator auf einem Client aus, funktioniert das auch wunderbar.
Nur will ich nicht auf 250 Clients diesen Schritt manuell durchführen. Also sollte das eigentlich über unser Client Management Systen laufen. Dort lasse ich den Powershell Befehl als System User ausführen und das schlägt mit folgender Fehlermeldung fehl.

Remove-AppxProvisionedPackage : Das Argument kann nicht an den Parameter "PackageName" gebunden werden, da es >NULL ist.
In Zeile:1 Zeichen:62
... e -PackageName (Get-AppxPackage Microsoft.BingSearch).PackageFullName
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidData: (:) [Remove-AppxProvisionedPackage], ParameterBindingValidationException
+ FullyQualifiedErrorId : >ParameterArgumentValidationErrorNullNotAllowed,Microsoft.Dism.Commands.RemoveAppxProvisionedPackageCommand

Das AppxPackage ist aber vorhanden. Auch schlägt das Powershell SCript fehl, wenn ich als normaler User angemeldet bin und die Powershell mit erhöhten Rechten als Admin starte.

Es scheint so, als müsste der Befehl mit einem angemeldeten Admin Account ausgeführt werden und es geht nicht, wenn ich eine Powershell in einem normalen Account mit einem administrativen Account öffne und dann den Befehl ausführe.

Oder muss ich hier irgendwas anders anpassen?

Ich würde gerne automatisiert auf allen Clients diesen Befehl laufen lassen, damit das neue Outlook entfernt wird.

Danke euch schon mal.

Content-ID: 671368

Url: https://administrator.de/forum/new-outlook-unter-windows-11-automatisiert-per-powershell-deinstallieren-671368.html

Ausgedruckt am: 22.02.2025 um 22:02 Uhr

dodo30
dodo30 14.02.2025 aktualisiert um 12:36:16 Uhr
Goto Top
Huhu,

also wenn du deinen Fehler erhälst, ist das Outlook (New) definitiv nicht installiert
Wie checkst du das?

Nur weil man das Symbol im StartMenü sieht, heisst es noch nicht das es wirklich installiert ist

siehe: https://learn.microsoft.com/en-us/microsoft-365-apps/outlook/get-started ...

To confirm if the app is installed, check if the logs folder is present under: %localappdata%\Microsoft\Olk\logs. In some cases, users might not have the app installed but might see the pinned/placeholder icon in the Start menu. The new Outlook app is installed when users select it. You can manage Windows Start pins by following the instructions in Customize the Start layout - Configure Windows. Users might also see the new Outlook app in the Start 'Recommended (Win11) or Suggested (Win10)' sections on consumer devices.

Also müsste man erst prüfen ob

(Get-AppxPackage Microsoft.OutlookForWindows)
etwas ausgibt


Wir benutzen bei uns als RMM WAPT
dort haben die extra setuphelper gebaut für APPX removal und ich habe das Problem damit nicht gehabt, haben da wohl extra eine Logic für eingebaut

https://www.wapt.fr/apidoc/wapt-2.6/windows/index_setuphelpers.html#setu ...


UPDATE:
bezieht sich wohl aber eher auf
Remove-AppxPackage -AllUsers -Package (Get-AppxPackage Microsoft.OutlookForWindows).PackageFullName

Typischer Microsoft quatsch halt wie immer ;)
phatair
phatair 14.02.2025 um 15:11:22 Uhr
Goto Top
Hi,

es sollte egal sein ob die App schon installiert ist oder nicht, da ich nicht AppxPackage anspreche,, sondern AppxProvisionedPackage.

Schaue ich mir mit Get-AppxProvisionedPackage -online die Packages an, ist das neue Outlook auch als ProvisionedPackage vorhanden.

ich möchte ja erstmal das neue Outlook aus den ProvisionedPackages entfernen. DAs macht MS in dem PS Befehl ja auch.

Nur irgendwie läuft der MS PS Command nur, wenn ich direkt als Admin angemeldet bin und nicht, wenn ich den Befehl in einer Powershell mit privilegierten Rechten in einem normalen User Kontext aufrufe.

ich hatte noch eine Idee, aber ich bin kein großer PS Kenner.
Ich kann ja auch den PackageName in eine Variable schreiben und dann per Remove-AppxProvisionedPackage entfernen.

meine Idee war jetzt wie folgt
PackageFullName in Variable schreiben
$GetOutlookApp = (Get-AppxPackage | Where-Object {($_.Name -eq 'Microsoft.OutlookForWindows')}).PackageFullName  

Wenn ich mir die Variable anschaue, steht dort auch der PackageFullName drin

und dann würde ich die App wie folgt entfernen
Remove-AppxProvisionedPackage -AllUsers -Online -PackageName $GetOutlookApp

Hier erhalte ich aber folgenden Fehler
Remove-AppxProvisionedPackage : Unbekannter Fehler
In Zeile:1 Zeichen:1
Remove-AppxProvisionedPackage -AllUsers -Online -PackageName $GetApp
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (face-smile [Remove-AppxProvisionedPackage], COMException
+ FullyQualifiedErrorId : Microsoft.Dism.Commands.RemoveAppxProvisionedPackageCommand

Hat jemand eine Idee warum das nicht klappt?
dodo30
dodo30 14.02.2025 um 15:40:03 Uhr
Goto Top
das Problem ist aber doch , wenn es nur als AppxProvisionedPackage installiert ist und NICHT als AppxPackage, dann bleibt
Get-AppxPackage Microsoft.OutlookForWindows
leer

ist das denn der Fall mit normalen User?

wenn du einen neuen User erstellst, Admin oder normalist egal, dann wird ja Outlook NEW installiert wegen AppxProvisonedPackage

In den "alten" usern wurde wohl Outlook NEW schon entfernt, daher zu dieser Problematik

Was ist denn der PackageFullName ?
ist der auf jedem Client anders? kanns grad schlecht nachstellen
dodo30
dodo30 14.02.2025 um 15:55:08 Uhr
Goto Top
oder probier mal so, als system user

Get-AppxPackage -AllUsers | Where-Object {$_.Name -Like '*OutlookForWindows*'} | Remove-AppxPackage  
Get-AppxProvisionedPackage -Online | ? DisplayName -like '*OutlookForWindows*' | Remove-AppxProvisionedPackage -Online  
phatair
phatair 14.02.2025 um 17:45:35 Uhr
Goto Top
Danke Dir.
Ich habe es jetzt wie folgt hinbekommen

$removeoutlook = Get-AppxProvisionedPackage -Online | where packagename -match 'Microsoft.OutlookForWindows'  
$removeoutlook | remove-AppxProvisionedPackage -online 
Get-AppxPackage -all "Microsoft.OutlookForWindows" | Remove-AppxPackage -AllUsers  

Damit entfernen wir das provisionierte Package und auch die schon installierten Apps.

Mit dem MS Command klappt es bei uns einfach nicht.
Die Outlook App wird bei den AppxProvisionedPackage gelistet, ebenso AppxPackage wenn ich den User prüfe.
Sie ist also definitiv vorhanden und der MS Command läuft ins leere bzw. bringt oben genannte Fehlermeldung wenn ich das ganze per Script über den System User (oder auch einen dynamischen Admin USer) verteilen will. Ebenso erhalte ich den Fehler wenn ich als normaler User angemeldet bin und die Powershell als Admin starte.

mit den hier genannten Befehlen klappt es sowohl in der Automatisierung als auch mit der priviligierten Powershell in einem normalen User Kontext.