Windows 10 21H1 und Server 2022: Ein Bug in GPRESULT?

In einem TechNet Forum-Thread wies Davorin Scharping darauf hin, dass die Cached Mode-Dauerhaftigkeitsrichtlinie in Outlook 2016 nicht funktioniert wies sie soll. Konkret ging es darum, dass die Einstellungen „1 Monat“, „3 Monate“ usw. als „Alle“ wiedergegeben wurden, zumindest auf dem neu gebauten Server 2022-basierten Management-Server, den Davorin dafür benutzt hat, die Policy zu bearbeiten.

GPRESULT Weirdness

Ich habe es im Labor nachgestellt und folgendes feststellen können:

  • Die Policy schreibt die richtigen Werte in die Registry des Users (siehe hier).
  • Bei mir, anders als anscheinend bei Davorin, interpretiert Outlook sie auch richtig.
  • Im GP Editor wird der eingestellte Wert auf allen Plattformen (GPMC –> GPEDIT auf Server 2016 oder 2022, RSOP auf Windows 10) korrekt.
  • In sämtlichen HTML- und XML-Ansichten (GPMC –> Settings, GPRESULT /H oder /X auf Windows 10) zeigen sowohl Windows 10 21H1 als auch Server 2022 den Wert „Alle“ an statt des tatsächlich eingestellten Wertes.

Hier ein GPResult auf dem gleichen Client, erzeugt aus der GPMC auf Server 2016:

Und hier daselbe Ergebnis auf Server 2022:

In der Registry kommt der korrekte Wert für „one month“ an:

Das Problem scheint zu sein, dass diese Policyeinstellung zwei Registry-Werte konsolidiert: „syncwindowsettingdays“ (der den Wert 3 für „three days“, 7 für „one week“ und 14 für „two weeks“ haben kann, sowie den Wert 0 für alle längeren Zeiträume) plus „syncwindowsetting“ (das die Anzahl Monate abbildet). Beide Werte auf 0 bedeutet nicht etwa „keine“, sondern „alle“. Und GPMC/GPRESULT in den neueren Betriebssystemen scheinen nur den Wert „syncwindowsettingdays“ auszuwerten – solange der auf 0 steht, wird der Zeitraum mit „All“ angezeigt.

More weirdness

Es ist aber leider nicht so, dass Microsoft die vormals heile Welt kaputt gemacht hätte – die Welt war vorher schon kaputt, nur auf eine andere Weise. Ich habe den Wert in meinem Testlabor nun auf „one week“ gesetzt. Ziehe ich aus der GPMC heraus den Bericht über den betroffenen Client, so bekomme ich folgende Ergebnisse:

  • Auf Server 2022 wird korrekt „one week“ angezeigt.
  • Auf Server 2016 hingegen verschwindet die Policy nach der Änderung komplett aus der HTML-Anzeige!

Mal sehen, ob Microsoft dafür eine Erklärung hat. GPRESULT ist aber ein wichtiges Troubleshooting-Werkzeug und sollte gefixt werden. Man kann nicht immer gleich in die Registry schauen…

Nachtrag: 21H2 macht die Dinge zumindest konsistent

Nach dem Upgrade des Clients von 21H1 auf 21H2 funktioniert die Anzeige in Wochen auf Server 2016 wieder. Die Anzeige in Monaten fällt nach wie vor auf „all“ zurück 🙁

Happy GPRESULTing!