Основываясь на этом посте, проблема заключается в поиске окончательного источника. Лучшее, что я смог найти, была эта документация для разработчиков, которая не настолько полная, как можно было бы предположить в ответе по первой ссылке.
Тем не менее, следующий код возвратит "официальное" имя Microsoft на английском языке для текущей работающей версии Windows:
$page = Invoke-WebRequest -uri 'https://msdn.microsoft.com/en-us/library/ms724358.aspx'
$TableText = ($page.AllElements |
Where-Object {$_.tagname -eq 'tbody' -and $_.innertext -like 'valuemeaning*'} |
Select-Object -ExpandProperty innertext) -split "`r`n"
$CSV = $TableText | Where-Object {$_ -match '^0x0.*'} |
ForEach-Object {$_ -replace "^(0x0[0-9A-F]+) ",'$1,'} |
ForEach-Object {"$([convert]::ToInt16($_.split(',')[0],16))" + ',' + $_.split(',')[-1]}
$Editions = ConvertFrom-Csv $CSV -Header 'SKU','Name'
$ThisOS = (Get-WmiObject Win32_OperatingSystem).operatingsystemsku
$Editions | Where-Object {$_.SKU -eq $ThisOS} |Select-Object -ExpandProperty Name
Надеюсь, это кому-нибудь поможет. Я могу изменить код, если кто-то найдет лучший онлайн-источник для поиска SKU.