윈도우 스토어앱에서는
그 흔한 Osversion 메소드를 지원하지 않는다 ㅡ.ㅡ;;;
system.environment.osversion
그래서 어떻게 해야 하나 찾아봤는데 역시 구글신이 해결해주었다.
핵심소스는 이부분이다.
| public static async Task<string> GetWindowsVersionAsync() | |
| { | |
| // There is no good place to get this so we're going to use the most popular | |
| // Microsoft driver version number from the device tree. | |
| var requestedProperties = new[] { DeviceDriverVersionKey, DeviceDriverProviderKey }; | |
| var microsoftVersionedDevices = (await PnpObject.FindAllAsync(PnpObjectType.Device, requestedProperties, RootContainerQuery)) | |
| .Select(d => new { Provider = (string)d.Properties.GetValueOrDefault(DeviceDriverProviderKey), | |
| Version = (string)d.Properties.GetValueOrDefault(DeviceDriverVersionKey) }) | |
| .Where(d => d.Provider == "Microsoft" && d.Version != null) | |
| .ToList(); | |
| var versionNumbers = microsoftVersionedDevices | |
| .GroupBy(d => d.Version.Substring(0, d.Version.IndexOf('.', d.Version.IndexOf('.') + 1))) | |
| .OrderByDescending(d => d.Count()) | |
| .ToList(); | |
| var confidence = (versionNumbers[0].Count() * 100 / microsoftVersionedDevices.Count); | |
| return versionNumbers.Count > 0 ? versionNumbers[0].Key : ""; | |
| } |
참고 : http://stackoverflow.com/questions/10125324/get-os-version-in-winrt-metro-app-c-sharp
'Windows10 App' 카테고리의 다른 글
| UWP(윈도우 유니버설 응용 프로그램) (0) | 2016.10.24 |
|---|