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 结构,包含从夏令时到标准时间在此操作系统上发生转换的日期和本地时间。 如果时区不支持夏令时,或者调用方需要禁用夏令时,则 SYSTEMTIME 结构中的 wMonth 成员必须为零。 如果指定了此日期,则还必须指定此结构的 DaylightDate 成员。
否则,系统会假定时区数据无效,并且不会应用任何更改。
若要选择月份中的正确日期,请将 wYear 成员设置为零, 将 wHour 和 wMinute 成员设置为过渡时间, 将 wDayOfWeek 成员设置为适当的工作日,将 wDay 成员设置为指示一个月内星期几的发生时间 (1 到 5,其中 5 指示当月的最后一天,如果一周中的某一天没有发生 5 次) 。
使用此表示法,指定 4 月第一个星期日的 02:00,如下所示: wHour = 2, wMonth = 4, wDayOfWeek = 0, wDay = 1。 在 10 月的最后一个星期四指定 02:00,如下所示: wHour = 2, wMonth = 10, wDayOfWeek = 4, wDay = 5。
如果 wYear 成员不为零,则转换日期为绝对日期;它只会发生一次。 否则,它是每年发生的相对日期。
StandardBias
在标准时间发生的本地时间转换期间使用的偏差值。 如果未提供 StandardDate 成员的值,则忽略此成员。
此值将添加到 Bias 成员的值中,以形成标准时间中使用的偏差。 在大多数时区中,此成员的值为零。
DaylightName[32]
夏令时的说明。 例如,“PDT”可能表示太平洋夏令时。 GetTimeZoneInformation 函数将返回字符串不变。 此字符串可以为空。
DaylightDate
一个 SYSTEMTIME 结构,包含从标准时间到夏令时在此操作系统上发生转换的日期和本地时间。 如果时区不支持夏令时,或者调用方需要禁用夏令时,则 SYSTEMTIME 结构中的 wMonth 成员必须为零。 如果指定了此日期,则还必须指定此结构中的 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[; 格式为字符串的显示名称comment]。 有关详细信息,请参阅 MUI。 |
MUI_Dlt | REG_SZ | 夏令时的说明,格式为 @path,-stringID[;comment]。 |
MUI_Std | REG_SZ | 标准时间的说明,格式为 @path,-stringID[;comment]。 |
性病 | REG_SZ | 标准时间的说明。 |
TZI | REG_BINARY |
以下时区信息。
|
有关 动态 DST 密钥的详细信息,请参阅 DYNAMIC_TIME_ZONE_INFORMATION。
StandardName 和 DaylightName 均根据当前用户的默认 UI 语言进行本地化。
示例
有关示例,请参阅 SetTimeZoneInformation。
要求
最低受支持的客户端 | Windows 2000 专业版 [桌面应用 |UWP 应用] |
最低受支持的服务器 | Windows 2000 Server [桌面应用 |UWP 应用] |
标头 | timezoneapi.h (包括 Windows.h) |