2011-07-28 13 views
1

Windows Mobileベースのデバイスで時間を読み取るために、Compact Frameworkで提供されるAPIは何ですか(UTCではなく!!) ?Windowsモバイルデバイスで時刻を読み取る方法C#

私はこのコードをUTCにデバイス時刻を取得することができた:

DateTime dt = DateLib.Now;    
SystemTime sysTime = new SystemTime(); 
Windows.SystemTime.GetSystemTime(out sysTime); 
Windows.SystemTime.ConvertTimeStructure(ref sysTime, out dt); 
Windows.SystemTime.SetSystemTime(dt); 

しかし、私は、デバイスのタイムゾーンごとに時間をしたいです。 ありがとう

答えて

1

組み込みのDateTime.Nowプロパティを使用しているのはなぜですか?

EDIT

コンパクトフレームワークcaches timezone information on loadので、アプリケーションがロードされた後の時間帯を変更する任意のコールはDateTime.Nowの呼び出しには反映されません。

今私はP/Invoking GetSystemTimeだと仮定していますが、代わりにP/Invoking GetLocalTimeにする必要があります。

+0

だから、何が起こっているかで、この:デバイスは太平洋標準時(PST)であると仮定し、私は私のアプリを起動し、ログイン。私は正しい時間を得る。今すぐログアウトし、タイムゾーンを変更してセントラル・スタンダード・タイムと言います。私はログインして、時刻(DateTime.Now)がデバイス(CST)の時計&アラームアプリケーションの時間ごとに時間を与えるが、私が得る時間はまだPSTになることを願っています。だから、私は自分のアプリにログインする前にデバイスの時刻を更新することにしました。だから、私は最初にデバイスの時間を読み取ってから設定します。しかし、私は正しいAPIを知らない。 – Neeraj

+0

DateLib.Nowは、DateTime.Nowを囲むラッパーで、秒を切り詰めます。 – Neeraj

関連する問題