<Return[G]><Top>

GetTimeZoneInformation

Declare Function Api_GetTimeZoneInformation& Lib "kernel32" Alias "GetTimeZoneInformation" (lpTimeZoneInformation As TIME_ZONE_INFORMATION)

Declare Function GetTimeZoneInformation Lib "kernel32" (lpTimeZoneInformation As TIME_ZONE_INFORMATION) As Long

現在のタイムゾーンのパラメータを取得する。これらのパラメータは、世界協定時刻(UTC)とローカル時刻の相互間の変換を制御する。

パラメータ
lpTimeZoneInformation
    1 個の TIME_ZONE_INFORMATION 構造体へのポインタを指定する。

    関数から制御が返ると、この構造体に、現在のタイムゾーンのパラメータが格納される。
 

戻り値
    関数が成功すると、次の値のいずれかが返る。

    値                                          

意味                                                                                                                              

    TIME_ZONE_ID_UNKNOWN

 

 

 

システムは、現在のタイムゾーンを決定できなかった。

差を指定し、夏時間と標準時間の移行日を指定せずに SetTimeZoneInformation 関数を呼び出した場合も、このエラーが発生する。
Windows NT/2000:サマータイムが現在のタイムゾーンに適用されない場合、この値が返る。移行日

が存在しないからである。

    TIME_ZONE_ID_STANDARD

 

 

 

システムは、TIME_ZONE_INFORMATION 構造体の StandardDate メンバ(夏時間から標準時

間への移行日時)で指定した範囲内を指している。
Windows 95:現在のタイムゾーンに夏時間が適用されない場合、この値が返る。移行日が存在しな

いからである。

    TIME_ZONE_ID_DAYLIGHT

 

システムは、TIME_ZONE_INFORMATION 構造体の DaylightDate メンバ(標準時間から夏時

間への移行日時)で指定した範囲内を指している。

    関数が失敗すると、TIME_ZONE_ID_INVALID が返る。拡張エラー情報を取得するには、GetLastError 関数を呼び出す。

解説
    UTC 時刻とローカル時刻の間の変換は、次の計算式に基づいている。
    UTC = ローカル時刻 + バイアス値(時差)
    UTC 時刻とローカル時刻の間のバイアス値は、分単位で表現されている。