Das Überprüfen der Version oder der Build-Nummer von Windows 10 ist nicht sehr hilfreich, da sich diese im Laufe der Zeit nicht ändert.
Es stellt sich heraus, dass der erste Satz falsch ist; Es stimmte in allen früheren Versionen von Windows, aber wir befinden uns jetzt in einer neuen Windows 10-Welt. Das neueste Insider-Build hat eine Build-Nummer im 10525Vergleich zu "RTM":10240 .
Es gibt verschiedene Möglichkeiten, die Build-Nummer in der Befehlszeile abzurufen:
systeminfo.exe
(Get-CimInstance -ClassName Win32_OperatingSystem -Namespace root/cimv2).BuildNumber
(Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" -Name CurrentBuild).CurrentBuild
Der letzte der drei ist der schnellste.
Wenn Sie die grafische Benutzeroberfläche bevorzugen, können Sie winver.exe oder den AboutEintrag im HelpMenü der meisten Windows-Desktopanwendungen verwenden.
Da es keine Service Packs mehr gibt, hängt der Patch-Level des Betriebssystems von den installierten Updates ab. Es gibt verschiedene Möglichkeiten, diese zu finden: GUI, systeminfo.exe, wmi usw.
Die empfohlene und leistungsstärkste Methode für solche Aufgaben ist die Verwendung von PowerShell:
Get-HotFix
zeigt so etwas wie:
Source Description HotFixID InstalledBy InstalledOn
------ ----------- -------- ----------- -----------
WIN10 Security Update KB3074663 NT AUTHORITY\SYSTEM 7/17/2015 12:00:00 AM
WIN10 Security Update KB3074667 NT AUTHORITY\SYSTEM 7/21/2015 12:00:00 AM
WIN10 Security Update KB3074674 NT AUTHORITY\SYSTEM 7/24/2015 12:00:00 AM
WIN10 Update KB3074678 NT AUTHORITY\SYSTEM 7/31/2015 12:00:00 AM
Sie können nach Updates in den letzten 10 Tagen filtern:
Get-Hotfix | Where {$_.InstalledOn -gt $(Get-Date).AddDays(-10) -and $_.Description -eq "Update"}
Oder zeigen Sie die letzten drei installierten Updates an:
Get-Hotfix | Sort-object InstalledOn -Descending | Select -First 3
Sie können überprüfen, ob ein bestimmtes Update installiert ist:
if ((get-hotfix -id kb3087916) -ne $null) {"patched..."}
Sie können die neueste Patch-KB-Nummer zuerst online finden, z. B .:
(New-Object Net.WebClient).DownloadString('https://microsoft.com/...')
Überprüfen Sie anschließend, ob es auf dem Computer vorhanden ist.
Hinweis: Dies ist nur ein Beispiel. Ich kenne keine Seite, auf der diese aufgelistet sind, und Sie müssen sie trotzdem analysieren.
Die Frage ist: Wird Microsoft im Laufe der Zeit die Funktionalität von Windows 10 so stark verändern, dass Sie überprüfen müssen, ob Ihre App oder Ihr Skript funktioniert?
Es ist möglicherweise eine bessere Idee, zu überprüfen, ob eine bestimmte Funktion auf dem System vorhanden ist, als nach einer Versionsnummer zu suchen.