diff --git a/images/win/scripts/Installers/Install-VS.ps1 b/images/win/scripts/Installers/Install-VS.ps1 index 2017dbb8..0f4550e4 100644 --- a/images/win/scripts/Installers/Install-VS.ps1 +++ b/images/win/scripts/Installers/Install-VS.ps1 @@ -44,4 +44,12 @@ if (Test-IsWin19) { Install-Binary -Url $sdkUrl -Name $sdkFileName -ArgumentList $argumentList } +if (Test-IsWin22) { + # Install Windows 10 SDK version 10.0.17763 + $sdkUrl = "https://go.microsoft.com/fwlink/p/?LinkID=2033908" + $sdkFileName = "sdksetup17763.exe" + $argumentList = ("/q", "/norestart", "/ceip off", "/features OptionId.UWPManaged OptionId.UWPCPP OptionId.UWPLocalized OptionId.DesktopCPPx86 OptionId.DesktopCPPx64 OptionId.DesktopCPParm64") + Install-Binary -Url $sdkUrl -Name $sdkFileName -ArgumentList $argumentList +} + Invoke-PesterTests -TestFile "VisualStudio" diff --git a/images/win/scripts/SoftwareReport/SoftwareReport.Generator.ps1 b/images/win/scripts/SoftwareReport/SoftwareReport.Generator.ps1 index 13ec8556..cdff2962 100644 --- a/images/win/scripts/SoftwareReport/SoftwareReport.Generator.ps1 +++ b/images/win/scripts/SoftwareReport/SoftwareReport.Generator.ps1 @@ -244,6 +244,12 @@ $markdown += New-MDHeader "Microsoft Visual C++:" -Level 4 $markdown += Get-VisualCPPComponents | New-MDTable $markdown += New-MDNewLine +$markdown += New-MDHeader "Installed Windows SDKs" -Level 4 +$sdk = Get-WindowsSDKs +$markdown += "``Location $($sdk.Path)``" +$markdown += New-MDNewLine +$markdown += New-MDList -Lines $sdk.Versions -Style Unordered + $markdown += New-MDHeader ".NET Core SDK" -Level 3 $sdk = Get-DotnetSdks $markdown += "``Location $($sdk.Path)``" diff --git a/images/win/scripts/SoftwareReport/SoftwareReport.VisualStudio.psm1 b/images/win/scripts/SoftwareReport/SoftwareReport.VisualStudio.psm1 index dc3dc031..b085433c 100644 --- a/images/win/scripts/SoftwareReport/SoftwareReport.VisualStudio.psm1 +++ b/images/win/scripts/SoftwareReport/SoftwareReport.VisualStudio.psm1 @@ -88,4 +88,12 @@ function Get-VisualStudioExtensions { $extensions | Foreach-Object { [PSCustomObject]$_ } | Select-Object Package, Version | Sort-Object Package +} + +function Get-WindowsSDKs { + $path = "${env:ProgramFiles(x86)}\Windows Kits\10\Extension SDKs\WindowsDesktop" + return [PSCustomObject]@{ + Path = $path + Versions = $(Get-ChildItem $path).Name + } } \ No newline at end of file diff --git a/images/win/scripts/Tests/VisualStudio.Tests.ps1 b/images/win/scripts/Tests/VisualStudio.Tests.ps1 index a9f02cfa..e60fce92 100644 --- a/images/win/scripts/Tests/VisualStudio.Tests.ps1 +++ b/images/win/scripts/Tests/VisualStudio.Tests.ps1 @@ -22,4 +22,10 @@ Describe "Visual Studio" { $installedComponents | Should -Contain $ComponentName } } +} + +Describe "Windows 10 SDK" { + It "Verifies 17763 SDK is installed" -Skip:((Test-IsWin16) -or (Test-IsWin19)) { + "${env:ProgramFiles(x86)}\Windows Kits\10\DesignTime\CommonConfiguration\Neutral\UAP\10.0.17763.0\UAP.props" | Should -Exist + } } \ No newline at end of file