: 그들은 사용자가 Windows 제어판에서 시간대를 선택하는 경우에 나타나는 (시간대 이름의 목록을 가져옵니다얻기 윈도우 시간대 정보 (C++/MFC) I가 시도하고
- 예 : "(UTC-08 : 00) 태평양 표준시 (미국 & 캐나다)").
나는 잘 작동하는 레지스트리의 "CurrentVersion \ Time Zones"섹션을 읽어서 그 일을합니다.
- 현재 선택된 시간대를 문자열로 가져옵니다.
GetTimeZoneInformation()을 사용하여 현재 표준 시간대를 가져올 수 있지만 이름이 레지스트리의 "CurrentVersion \ Time Zones"섹션에서 검색 한 표준 시간대 목록과 일치하지 않습니다. 예를 들어 태평양 표준시는 표준 시간대 목록에서 "(UTC-08 : 00) 태평양 표준시 (US & 캐나다)"로 표시되지만 GetTimeZoneInformation()에는 "태평양 표준시"및 "태평양 일광 절약 시간"이라는 문자열이 포함됩니다. "CurrentVersion \ Time Zones"이름에 해당하는 이름을 찾아서 목록에서 선택할 수 있어야합니다.
- 문자열 이름을 기준으로 UTC와 다른 표준 시간대의 현재 오프셋 (분)을 가져옵니다.
timeZoneInformation.Bias에서 UTC로부터 오프셋을 검색 할 수 있지만 현재 선택된 시간대에만 적용됩니다. 실제로 (UC-07 : 00) 산지 표준시 (미국 & 캐나다)의 레지스트리에 나열된대로 "일광 절약 시간제"를 알고 있어야합니다.
감사합니다. !
Dunno 내 번호가 매겨진 목록이 1., 1., 1로 끝나는 이유는 무엇입니까? –