Мне нужно изменить летнее время и часовой пояс через API в моем приложении. Я изменил и скопировал пример использования «SetTimeZoneInformation» в конце следующей ссылки и запустил его: http://msdn.microsoft.com/en-us/library/windows/desktop/ms724944(v=vs.85).aspx
Я предполагаю, что мои настройки времени должны отражать мои настройки времени в трее или на панели управления. Но ничего не происходит.
Следует также отметить следующую вещь.
Этот код изменяет содержимое ключа «HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation». И нет никаких изменений в ветке «HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\my time zone». Но это то, что я ищу!
Есть ли способ изменить «мой часовой пояс» с помощью API на С++?
Добавлено (из ответа, который должен был быть отредактирован здесь):
Так что, собственно, моя цель - заставить мое приложение работать под Win7. Существующая функциональность использует поддержку MANUAL DST. Таким образом, мне нужно как-то синхронизировать эти ручные настройки смещения DST и GMT с настройками Win7. Как я понял, функция SetTimeZoneInformation просто пытается что-то вроде поиска часового пояса из существующего набора часовых поясов в соответствии с моим вводом. Если нет часового пояса, равного моему вводу, Win7 использует часовой пояс по умолчанию, например UTC-12, и уведомляет пользователя о том, что «текущий часовой пояс не распознан».
Итак, какой подход я должен использовать, чтобы понять это?