Jak działa normalizacja strefy czasowej w programie Microsoft Outlook

Oryginalny numer KB: 2642044

Podsumowanie

Chociaż czas może wydawać się prostą ludzką koncepcją, która pozwala wszystkim na całym świecie otrzymać wezwanie na spotkanie, a następnie uczestniczyć w spotkaniu w tym samym czasie, koncepcja ta jest w rzeczywistości bardzo złożona. W tym artykule opisano, jak Microsoft Outlook 2010 i nowsze wersje osiągają ten cel przy użyciu kombinacji elementów, takich jak uniwersalny czas koordynowany (UTC), przesunięcie strefy czasowej, reguły czasu letniego (DST) i ustawienia strefy czasowej systemu Windows.

Więcej informacji

Przed zapoznaniem się ze szczegółami działania normalizacji strefy czasowej w programie Outlook ważne jest zdefiniowanie pewnych ważnych terminów.

  • UTC

    UTC oznacza uniwersalny czas koordynowany. Pomyśl o tym jako o prawdziwym czasie na ziemi, który nigdy się nie zmienia (z wyjątkiem drobnych sekund przestępnych tu i ówdzie, aby uwzględnić zmiany w rotacji planety).

    Aby uzyskać więcej informacji na temat czasu UTC, zobacz Uniwersalny czas koordynowany.

  • Przesunięcie strefy czasowej

    Przesunięcie strefy czasowej to czas dla regionu geograficznego w stosunku do czasu UTC. Na przykład strefa czasowa pacyfiku jest 8 godzin za UTC. W związku z tym, jeśli jest to 20:00 UTC, czas w strefie czasowej Pacyfiku jest południe.

  • Reguły czasu letniego

    Reguły czasu letniego to reguły, według których niektóre regiony okresowo zmieniają przesunięcie strefy czasowej. Reguły te obejmują zarówno datę rozpoczęcia, jak i datę zakończenia okresu czasu DST, a także liczbę godzin przesunięcia strefy czasowej. Na przykład latem czas w strefie czasowej Pacyfiku może być obliczany jako UTC \u2012 7 godzin, podczas gdy dla roku odpoczynku czas jest obliczany jako UTC \u2012 8 godzin.

  • Globalna baza danych strefy czasowej systemu Windows

    System Windows przechowuje wszystkie reguły strefy czasowej i czasu DST dla całej planety w globalnej bazie danych stref czasowych systemu Windows. Baza danych jest przechowywana w rejestrze systemu Windows pod następującym podkluczem:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones

  • Ustawienia bieżącej strefy czasowej systemu Windows

    Bieżące ustawienia strefy czasowej systemu Windows to ustawienia, których obecnie używa system Windows w celu określenia czasu dla komputera. Ze wszystkich reguł w globalnej bazie danych strefy czasowej systemu Windows można zastosować tylko jeden zestaw reguł DST. Bieżący czas systemu Windows przechowuje zestaw reguł, które są obecnie używane do obliczania czasu na komputerze.

    Bieżące ustawienia strefy czasowej systemu Windows są przechowywane w rejestrze systemu Windows pod następującym podkluczem:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation

  • Czas komputera

    Czas komputera to rzeczywisty czas wyświetlany przez system Windows, jak pokazano na poniższym zrzucie ekranu obszaru powiadomień.

    Zrzut ekranu przedstawiający obszar powiadomień na pasku zadań.

    Jeśli wybierzesz tę część obszaru powiadomień systemu Windows, zostanie wyświetlony rozszerzony kalendarz i zegar.

    Zrzut ekranu przedstawiający rozszerzony kalendarz i zegar.

    Możesz wybrać pozycję Zmień ustawienia daty i godziny, aby sprawdzić bieżące ustawienia strefy czasowej dla komputera (zrzut ekranu dla tego kroku znajduje się poniżej).

    Zrzut ekranu przedstawiający okno dialogowe Ustawienia daty i godziny.

Sposób obliczania czasu komputera

Czas komputera jest obliczany przez poświęcenie czasu UTC, dodanie przesunięcia opartego na strefie czasowej skonfigurowanej dla komputera, a następnie opcjonalne dostosowanie przesunięcia czasu letniego (w zależności od reguł czasu letniego). Formuła używana do obliczania czasu komputera jest następująca:

UTC + Przesunięcie strefy czasowej + przesunięcie czasu DST

Należy pamiętać, że ta metoda reprezentuje sposób, w jaki ludzie zgodzili się myśleć o koncepcji czasu. Ta metoda jest standardem światowym i w ten sposób firma Microsoft implementuje czas na komputerze.

Jak program Outlook obsługuje reguły przesunięcia strefy czasowej i regułY DST w elementach kalendarza

To może wydawać się proste zadanie, aby upewnić się, że dwie osoby, które mają ten sam wniosek o spotkanie uczestniczyć w spotkaniu w tym samym czasie. Jednak po dodaniu scenariuszy, w których strefy czasowe zmieniają się z różnymi regułami czasu letniego, obliczenie staje się złożone.

Aby zobaczyć, jak program Outlook radzi sobie z tą sytuacją, rozważ następujący scenariusz:

  • Organizator spotkania ma następujące ustawienia bieżącej strefy czasowej systemu Windows:

    Strefa czasowa Pacyfiku (UTC\u20128; DST rozpoczyna się 13 marca 2011 r.; DST kończy się 6 listopada 2011 r.)

  • Uczestnik spotkania ma następujące ustawienia bieżącej strefy czasowej systemu Windows:

    Wschodnia strefa czasowa (UTC\u20125; DST rozpoczyna się 13 marca 2011 r.; DST kończy się 6 listopada 2011 r.)

  • Organizator spotkania tworzy spotkanie w kalendarzu na 20 listopada 2011 r., o godzinie 7:00.

Krok 1. Organizator wysyła żądanie spotkania z informacjami o strefie czasowej

Na komputerze organizatora spotkanie w żądaniu jest tworzone, aby rozpocząć o godzinie 7:00.

Na komputerze organizatora program Outlook wysyła żądanie spotkania. Żądanie zawiera następujące informacje we właściwościach komunikatu:

Spotkanie jest o godzinie 15:00 UTC w dniu 20 listopada 2011 r.
Moja strefa czasowa to Pacyfik (UTC\u20128)
DST rozpoczyna się 13 marca 2011 r., czas DST kończy się 6 listopada 2011 r., a przesunięcie wynosi +1

Po utworzeniu spotkania rząd upoważnia do wprowadzenia nowej ustawy, zgodnie z którą w strefie czasowej Pacyfiku DST rozpoczyna się 2 lutego 2011 r. i kończy się 1 grudnia 2011 r. Ponieważ istnieją nowe reguły strefy czasowej, a termin przypada w okresie, w którym jest stosowana nowa reguła strefy czasowej, następuje normalizacja (kroki 2 i 3). Ta normalizacja jest przedstawiona na poniższej ilustracji.

Rysunek osi czasu normalizacji.

Krok 2. Program Outlook uczestnika określa zamierzony czas lokalny

Na komputerze uczestnika program Outlook oblicza zamierzony czas lokalny spotkania na podstawie informacji zawartych w żądaniu spotkania:

Zamierzony czas lokalny = UTC podczas tworzenia spotkania + przesunięcie dla strefy czasowej + przesunięcie dla czasu DST podczas tworzenia spotkania

  • Czas UTC podczas tworzenia spotkania to 15:00 UTC
  • Przesunięcie dla strefy czasowej tworzenia (Pacyfik) to \u20128
  • Przesunięcie czasu DST dla czasu pacyficznego podczas tworzenia spotkania wynosi 0

Zamierzony czas lokalny = 15:00 UTC + (\u20128 godzin dla przesunięcia strefy czasowej) + (0 godzin dla przesunięcia czasu DST) = 7:00 czasu pacyficznego

Krok 3. Program Outlook uczestnika określa znormalizowany czas UTC

Na komputerze uczestnika program Outlook normalizuje czas spotkania na podstawie globalnej bazy danych strefy czasowej systemu Windows na komputerze uczestnika w celu określenia czasu UTC.

UTC na początku spotkania = zamierzony czas lokalny \u2012 przesunięcie dla strefy czasowej \u2012 przesunięcie dla czasu DST

  • Zamierzony czas lokalny to 7:00 czasu pacyficznego (na podstawie obliczeń w kroku 2)
  • Przesunięcie dla strefy czasowej tworzenia (Pacyfik) to \u20128
  • Przesunięcie czasu DST dla czasu pacyficznego podczas rozpoczęcia spotkania wynosi +1
  • UTC na początku spotkania = 7:00 czasu lokalnego \u2012 (\u20128 godzin dla strefy czasowej) \u2012 (1 godzina dla czasu DST)

UTC na początku spotkania = 7:00 + 8 godzin \u2012 1 godzina = 14:00 UTC

Krok 4. Uczestnik określa prawidłowy czas dla tego terminu dla ustawień czasu uczestnika

Na komputerze uczestnika program Outlook konwertuje czas UTC na czas komputera lokalnego przy użyciu bieżących ustawień strefy czasowej systemu Windows.

Lokalny czas rozpoczęcia = UTC na początku spotkania + przesunięcie dla lokalnej strefy czasowej + przesunięcie dla czasu DST na początku spotkania

  • Czas UTC na początku spotkania to 14:00 UTC (na podstawie obliczeń w kroku 3)
  • Przesunięcie dla lokalnej strefy czasowej (wschodniej) to \u20125
  • Przesunięcie dla czasu DST w czasie wschodnim podczas rozpoczęcia spotkania dla lokalnej strefy czasowej wynosi +1

Lokalny czas rozpoczęcia = 14:00 UTC + (\u20125 godzin dla strefy czasowej) + 1 godzina dla czasu DST

Odpowiada to godzinie 10:00 czasu wschodniego, lokalnemu czasowi komputera uczestnika i jest to czas, dla którego spotkanie jest zaplanowane w kalendarzu uczestnika.

Uwaga

Jednym z podstawowych problemów jest to, że jeśli nie wybierzesz opcji Automatycznie dostosuj zegar dla czasu letniego na komputerze uczestnika, może wystąpić niezgodność przesunięcia UTC (wyłączone o godzinę) między regułami strefy czasowej w globalnej bazie danych stref czasowych systemu Windows a bieżącymi ustawieniami strefy czasowej systemu Windows. Aby wybrać opcję Automatycznie dostosuj zegar dla czasu letniego, wybierz pozycję Zmień strefę czasową w oknie dialogowym Data i godzina , aby wyświetlić okno dialogowe Ustawienia strefy czasowej (zrzut ekranu dla tego kroku znajduje się poniżej).

Zrzut ekranu przedstawiający okno dialogowe Ustawienia strefy czasowej.

Aby uzyskać więcej informacji na temat zarządzania konfiguracjami i aktualizacjami stref czasowych i czasowych, zobacz Centrum pomocy i obsługi czas letni.