Поделиться через


структура TIME_ZONE_INFORMATION (timezoneapi.h)

Задает параметры для часового пояса.

Синтаксис

typedef struct _TIME_ZONE_INFORMATION {
  LONG       Bias;
  WCHAR      StandardName[32];
  SYSTEMTIME StandardDate;
  LONG       StandardBias;
  WCHAR      DaylightName[32];
  SYSTEMTIME DaylightDate;
  LONG       DaylightBias;
} TIME_ZONE_INFORMATION, *PTIME_ZONE_INFORMATION, *LPTIME_ZONE_INFORMATION;

Члены

Bias

Текущее смещение для перевода локального времени на данном компьютере (в минутах). Смещение — это разница в минутах между универсальным координированным временем (UTC) и местным временем. Все переводы между UTC и местным временем основаны на следующей формуле:

UTC = местное время + смещение

Этот член является обязательным.

StandardName[32]

Описание стандартного времени. Например, "EST" может указывать на восточное стандартное время. Функция GetTimeZoneInformation вернет строку без изменений. Эта строка может быть пустой.

StandardDate

Структура SYSTEMTIME , содержащая дату и местное время при переходе от летнего времени к стандартному времени в этой операционной системе. Если часовой пояс не поддерживает летнее время или если вызывающему объекту необходимо отключить летнее время, элемент wMonth в структуре SYSTEMTIME должен быть равен нулю. Если указана эта дата, необходимо также указать элемент DaylightDate этой структуры.

В противном случае система предполагает, что данные часового пояса недопустимы и изменения не будут применены.

Чтобы выбрать правильный день в месяце, задайте для элемента wYear нулевое значение, для элементов wHour и wMinute — время перехода, для элемента wDayOfWeek — соответствующий день недели, а для элемента wDay — для обозначения вхождения дня недели в пределах месяца (от 1 до 5, где 5 обозначает окончательное событие в течение месяца, если этот день недели не наступает 5 раз).

Используя эту нотацию, укажите 02:00 в первое воскресенье апреля следующим образом: wHour = 2, wMonth = 4, wDayOfWeek = 0, wDay = 1. Укажите 02:00 в последний четверг октября следующим образом: wHour = 2, wMonth = 10, wDayOfWeek = 4, wDay = 5.

Если элемент wYear не равен нулю, дата перехода является абсолютной; Оно будет происходить только один раз. В противном случае это относительная дата, которая наступает ежегодно.

StandardBias

Значение смещения, используемое во время переводов по местному времени, которые происходят в стандартное время. Этот элемент игнорируется, если значение для элемента StandardDate не указано.

Это значение добавляется к значению элемента Bias для формирования смещения, используемого в течение стандартного времени. В большинстве часовых поясов значение этого элемента равно нулю.

DaylightName[32]

Описание летнего времени. Например, "PDT" может указывать на тихоокеанское время (лето). Функция GetTimeZoneInformation вернет строку без изменений. Эта строка может быть пустой.

DaylightDate

Структура SYSTEMTIME , содержащая дату и местное время при переходе от стандартного времени к летнему времени в этой операционной системе. Если часовой пояс не поддерживает летнее время или если вызывающему объекту необходимо отключить летнее время, элемент wMonth в структуре SYSTEMTIME должен быть равен нулю. Если указана эта дата, необходимо также указать элемент StandardDate в этой структуре.

В противном случае система предполагает, что данные часового пояса недопустимы и изменения не будут применены.

Чтобы выбрать правильный день в месяце, задайте для элемента wYear нулевое значение, для элементов wHour и wMinute — время перехода, для элемента wDayOfWeek — соответствующий день недели, а для элемента wDay — для обозначения вхождения дня недели в пределах месяца (от 1 до 5, где 5 обозначает окончательное событие в течение месяца, если этот день недели не наступает 5 раз).

Если элемент wYear не равен нулю, дата перехода является абсолютной; Оно будет происходить только один раз. В противном случае это относительная дата, которая наступает ежегодно.

DaylightBias

Значение смещения, используемое во время переводов по местному времени, которые происходят в летнее время. Этот элемент игнорируется, если не указано значение для элемента DaylightDate .

Это значение добавляется к значению элемента Bias для формирования смещения, используемого в летнее время. В большинстве часовых поясов значение этого элемента равно –60.

Комментарии

Параметры для каждого часового пояса хранятся в следующем разделе реестра:

HKEY_LOCAL_MACHINE
   SOFTWARE
      Microsoft
         Windows NT
            CurrentVersion
               Time Zones
                  time_zone_name

Каждая запись часового пояса содержит следующие значения реестра.

Значение реестра Тип Описание
Дисплей REG_SZ Отображаемое имя.
Dlt REG_SZ Описание для летнего времени.
MUI_Display REG_SZ Отображаемое имя в виде строки формы @path,-stringID[;примечание]. Дополнительные сведения см. в разделе MUI.
MUI_Dlt REG_SZ Описание дневного времени в виде строки формы @path,-stringID[;примечание].
MUI_Std REG_SZ Описание стандартного времени в виде строки формы @path,-stringID[;примечание].
Std REG_SZ Описание стандартного времени.
ТЗИ REG_BINARY Следующие сведения о часовом поясе.
typedef struct _REG_TZI_FORMAT
{
    LONG Bias;
    LONG StandardBias;
    LONG DaylightBias;
    SYSTEMTIME StandardDate;
    SYSTEMTIME DaylightDate;
} REG_TZI_FORMAT;

 

Дополнительные сведения о динамическом ключе DST см. в разделе DYNAMIC_TIME_ZONE_INFORMATION.

Как StandardName, так и DaylightName локализованы в соответствии с языком пользовательского интерфейса текущего пользователя по умолчанию.

Примеры

Пример см. в разделе SetTimeZoneInformation.

Требования

   
Минимальная версия клиента Windows 2000 Профессиональная [классические приложения | Приложения UWP]
Минимальная версия сервера Windows 2000 Server [классические приложения | Приложения UWP]
Верхняя часть timezoneapi.h (включая Windows.h)

См. также раздел

DYNAMIC_TIME_ZONE_INFORMATION

GetTimeZoneInformation

SYSTEMTIME

SetTimeZoneInformation