public static AppxTargetOperatingSystem GetOperatingSystemFromNameAndVersion(string name, string version) { AppxTargetOperatingSystem result; switch (name) { case "Windows.Desktop": result = GetWindowsDesktop(version); break; case "Windows.Universal": result = GetWindowsDesktop(version); break; case "MSIXCore.Desktop": result = GetMsixCoreDesktop(version); break; default: result = new AppxTargetOperatingSystem { IsNativeMsixPlatform = AppxTargetOperatingSystemType.Other, Name = name, TechnicalVersion = version }; break; } result.NativeFamilyName = name; return(result); }
private static AppxTargetOperatingSystem GetWindowsDesktop(string version) { var result = new AppxTargetOperatingSystem(); result.TechnicalVersion = version; if (version != null && Version.TryParse(version, out var parsedVersion)) { version = parsedVersion.ToString(3); switch (version) { case "6.1.7601": result.Name = "Windows 7 SP1 / Server 2008 R2"; result.IsNativeMsixPlatform = AppxTargetOperatingSystemType.MsixCore; break; case "6.2.9200": result.Name = "Windows Server 2012"; result.IsNativeMsixPlatform = AppxTargetOperatingSystemType.MsixCore; break; case "6.3.9600": result.Name = "Windows 8.1 / Server 2012 R2"; result.IsNativeMsixPlatform = AppxTargetOperatingSystemType.MsixCore; break; case "10.0.10240": result.MarketingCodename = ""; result.Name = "Windows 10 1507"; result.IsNativeMsixPlatform = AppxTargetOperatingSystemType.MsixCore; break; case "10.0.10586": result.MarketingCodename = "November Update"; result.Name = "Windows 10 1511"; result.IsNativeMsixPlatform = AppxTargetOperatingSystemType.MsixCore; break; case "10.0.14393": result.MarketingCodename = "Anniversary Update"; result.Name = "Windows 10 1607"; result.IsNativeMsixPlatform = AppxTargetOperatingSystemType.MsixCore; break; case "10.0.15063": result.MarketingCodename = "Creators Update"; result.Name = "Windows 10 1703"; result.IsNativeMsixPlatform = AppxTargetOperatingSystemType.MsixNativeSupported; break; case "10.0.16299": result.MarketingCodename = "Fall Creators Update"; result.Name = "Windows 10 1709"; result.IsNativeMsixPlatform = AppxTargetOperatingSystemType.MsixNativeSupported; break; case "10.0.17134": result.MarketingCodename = "April 2018 Update"; result.Name = "Windows 10 1803"; result.IsNativeMsixPlatform = AppxTargetOperatingSystemType.MsixNativeSupported; break; case "10.0.17763": result.MarketingCodename = "October 2018 Update"; result.Name = "Windows 10 1809"; result.IsNativeMsixPlatform = AppxTargetOperatingSystemType.MsixNativeSupported; break; case "10.0.18362": result.MarketingCodename = "May 2019 Update"; result.Name = "Windows 10 1903"; result.IsNativeMsixPlatform = AppxTargetOperatingSystemType.MsixNativeSupported; break; case "10.0.18363": result.MarketingCodename = "November 2019 Update"; result.Name = "Windows 10 1909"; result.IsNativeMsixPlatform = AppxTargetOperatingSystemType.MsixNativeSupported; break; case "10.0.19041": result.MarketingCodename = "May 2020 Update"; result.Name = "Windows 10 2004"; result.IsNativeMsixPlatform = AppxTargetOperatingSystemType.MsixNativeSupported; break; case "10.0.19042": result.MarketingCodename = "October 2020 Update"; result.Name = "Windows 10 2004"; result.IsNativeMsixPlatform = AppxTargetOperatingSystemType.MsixNativeSupported; break; default: result.Name = "Windows " + version; result.IsNativeMsixPlatform = AppxTargetOperatingSystemType.MsixNativeSupported; return(result); } } return(result); }
public SystemDependency(AppxTargetOperatingSystem operatingSystem) { this.OperatingSystem = operatingSystem; }
private static string GetOsFamily(AppxTargetOperatingSystem system) { return((system.NativeFamilyName.Contains("windows", StringComparison.OrdinalIgnoreCase) ? "Windows" : system.NativeFamilyName) + "-" + Version.Parse(system.TechnicalVersion).ToString(2)); }