Ich falle immer mal wieder darüber: Wie kann man für alle Benutzer die Spracheinstellungen per PowerShell setzen?
Die Frage ist schnell beantwortet und eine kurze Suche führt meistens etwas wie das folgende zutage:
Meistens sieht dann in der Zentraladministration alles gut aus:
Aber für "einige" (oder auch alle...) Benutzer erscheinen die Werte dann nicht in den MySites:
Das "Geheimnis" ist ein TimerJob ("User Profile Service Application_LanguageAndRegionSync") der allerdings nur richtig arbeitet, wenn die eigenschaft SPS-RegionalSettings-Initialized
auf true
gesetzt ist. Im Standard läuft dieser Job jede Minute - ein Start, direkt nach der Anpassung kann aber auch nicht schaden.
Das Finale Skript muss also so aussehen:
Danach erscheinen auch die Anpassungen in der MySite:
Was gibt es noch dazu zu sagen?
- Die Sprach-codes müssen "korrekt" sein - also
de-DE
nichtde-de
. - Der Text darf keine leerzeichen enthalten - also
de-DE,en-US
, nichtde-DE, en-US