Установка часового пояса в приложении с помощью OpenNETCF.WindowsCE

Я разрабатываю приложение для Windows Mobile 6.1, используя OpenNETCF Smart Device Framework, и я я пытаюсь обновить часовой пояс устройства Windows Mobile из моего приложения, используя _ 1_ вызов.

Часовой пояс, который я пытаюсь установить, - это GMT-5 Eastern (часовой пояс Нью-Йорка, который соблюдает летнее время), но система выбирает GMT-5 Богота, Лима (который не соблюдает летнее время).

Чтобы убедиться, что я правильно его устанавливаю, после установки часового пояса я вызвал _ 2_, чтобы проверить, совпадает ли часовой пояс, который я установил ранее, и совпадает ли он. Итак, я не знаю, как эта настройка запуталась внутри.

Я нашел здесь аналогичный вопрос, но нет краткого ответа, а ссылка на ссылку мертва.

Вот часть кода, который я использую:

var tzc = new TimeZoneCollection();
tzc.Initialize();

var currentTz = new TimeZoneInformation();
DateTimeHelper.GetTimeZoneInformation(ref currentTz);

var tziList = tzc.Cast<TimeZoneInformation>().ToList();
var configTzi = tziList.FirstOrDefault(i => i.StandardName == "Eastern Standard Time");

if (configTzi != null)
    if (currentTz.StandardName != configTzi.StandardName)
        DateTimeHelper.SetTimeZoneInformation(configTzi);

Любая помощь будет принята с благодарностью.


person user2333272    schedule 12.08.2014    source источник
comment
Не могли бы вы дать ссылку на аналогичный вопрос, который вы нашли?   -  person Matt Johnson-Pint    schedule 12.08.2014


Ответы (1)


Ваш код должен работать нормально, но вы сказали, что часовой пояс Нью-Йорка соблюдает летнее время, поэтому вы можете включить Auto DST, который я мог бы установить, установив ключ в реестре с этим кодом:

const string key = @"HKEY_LOCAL_MACHINE\Software\Microsoft\Clock";
Registry.SetValue(key, "AutoDST", 1);

Надеюсь, это поможет, С уважением

Дидье

person Didier SIMON    schedule 29.04.2015