このツールで、Microsoft
の西暦
2000
年対応ステートメントに対応したアプリケーションをビルド可能か
:
可能
日付の処理:
Windows
CE
では、日付は圧縮されて
OAL
(HAL、Hardware
Abstraction
Layer)
レイヤ
に保存されます。OAL
は
OEM
(Original
Equipment
Manufacturer)
によって管理されています。このデータの保存方法は
OEM
によって異なりますが、ほとんどの
OEM
では
1950
〜
2049
年などの
100
年の範囲を指定して保存しています。Windows
CE
では、常に
4
桁の西暦で日付を取得して返します。ただし、ハードウェアと直接通信する
OAL
レイヤーは例外です。Windows
CE
との外部インターフェイスでは、4
桁の西暦が使用されます。
下
2
桁の西暦の処理:
Windows
CE
には下
2
桁から下
4
桁への西暦変換ロジックはありませんが、OLE
にはあります。OLE
では次のルールで下
2
桁の西暦が
4
桁の西暦に変換されます。
下
2
桁
|
下
4
桁
|
00-29
|
2000-2029
|
30-99
|
1930-1999
|
OLE
では、プログラム的に
4
桁の西暦が使用されます。この変換が行われるのは、年を意味する
2
桁の文字列がアプリケーションに渡され、OLE
がそれを変換する必要がある場合です。オペレーティング
システム自体はこの変換に依存しません。
西暦
2000
年以降の日付処理の一般的な問題:
OEM
では、CPU
で提供されている場合を除き、リアルタイム
クロックを開発する必要があります。
また、リアルタイム
クロック関数も組み込む必要があります。Windows
CE
は、OEM
と
OEM
のリアルタイム
クロック
API
のインプリメントに依存しています。OEM
は、日付が常に正しく処理されるように、OAL
やハードウェアに正しい情報を渡す必要があります。
ドキュメントおよびサンプル
ファイルでは、OEM
による
西暦
2000
年対応の管理について説明しています。
テスト時のガイドラインと推奨事項
:
通常は、他の製品への影響を避けるため、実作業環境ではテストしないでください。マイクロソフトでは、システム
クロックが適正であることを確実にするために、GetSystemTime
および
SetSystemTime
を呼び出すことを
OEM
に推奨しています。これらの
API
は、西暦
2000
年問題対応状況のテストに必要な
OEM
のリアルタイム
クロック関数を呼び出します。このテストでは、さまざまな日付を設定してその結果を確認します。
SSHORTDATE
の地域日付の書式:
Windows
CE
2.11
に付属の地域テーブルには、各地域に少なくとも
1
つの
4
桁の
SSHORTDATE
書式が含まれています。
OEM
が地域を追加する場合は、カスタム地域に少なくとも
1
つの
4
桁の
SSHORTDATE
書式を組み込むことを考慮してください。 |