私のアプリケーションは、過去と現在の日付を現地時間から UTC に変換します。
過去の日付を正しく処理しながら、将来の DST の更新を Windows に適用できるようにする必要があります。
アプリケーションは C++ で作成され、Server 2003 で実行されています。
私が調査したオプション:
gmtime()
localtime()
現在の DST 規則のみを遵守するため、過去の日付に対して常に正しいとは限りません。(関連SO質問)個別の手動更新が必要なため、tz データベースは使用できません。
GetTimeZoneInformationForYear()
Vista/Server 2008 が必要なため、アウトです。過去の DST 情報はレジストリに保存されていますが、より高いレベルのものを探しています。
ブースト
date_time
:- クラス
us_dst_rules
は非推奨であり、OS が更新されても更新されません。 - class
dst_calc_engine<>
はその後継ですが、OS の更新も考慮しません。
- クラス
そう...
...これを行うために未加工のレジストリソリューションを使用している人はいますか?
...他の提案はありますか?
(編集:dst_calc_engine
DSTアップデートをサポートしていないことがわかりました)