Wenn man in Powershell einen zeitgesteuerten geplanten Task anlegen will, erzeugt das Cmdlet New-ScheduledTaskTrigger standardmäßig einen Trigger, dessen Zeit in UTC (Universal Naming Convention oder Greenich Mean Time) angegeben ist. In der grafischen Oberfläche des Taskplaners wird das durch einen Haken "Zeitzonenübergreifende Synchronisation" angezeigt.
Um einen Trigger mit lokaler Zeit anzulegen, muss man den Trigger nachträglich bearbeiten, da es keine Möglichkeit gibt, dem Cmdlet beim Erzeugen des Triggers mitzugeben, dass man lokale Zeit verwenden möchte. Die Zeit wird dabei im Trigger in der Eigenschaft StartBoundary als Text im Format "yyyy-MM-ddThh:mm:ss" abgelegt, wobei UTC-Zeit mit einem Z am Ende gespeichert wird.
Was auffällt ist, dass New-ScheduledTaskTrigger die Zeit beim Erstellen automatisch in UTC umrechnet. Im Beispiel wurde als Startzeit 18:00:00 Uhr (MEZ) angegeben, der Trigger hat aber 17:00:00 Uhr (UTC) gespeichert. Es reicht also nicht, das Z am Ende des Strings abzuschneiden. Stattdessen muss die Zeit zuerst wieder in lokale Zeit umgewandelt werden, was Get-Date erledigt, und anschließend wieder in den passenden String umgewandelt werden.