Изменение часового пояса из приложения таким способом не меняет местное время: вместо этого оно меняет системное время, чтобы сохранить местное время таким же.Это не то, что делает панель управления, но если вы хотите эмулировать функциональность панели управления, вам нужно сделать что-то вроде этого:
- сохранить системное время
- изменить часовой пояс
- восстановить сохраненное системное время
Таким образом, системное время остается неизменным, а местное время изменяется в соответствии с выбранным часовым поясом.
Кстати, мыСделайте это в одном из наших продуктов, используя библиотеку OpenNETCF (http://www.opennetcf.com),, которая включает в себя класс DateTimeHelper
(среди многих других полезных вещей - и выпуск для сообщества бесплатный). (Это просто немного лучше, чем написание вашегособственный пинвоук для доступа SetTimeZoneInformation()
, функциональность та же.)