Warum gibt Windows 10 die Versionsnummer 6.3 zurück?

8130
Dog Lover

Unter Windows 10 wird der VB.NET-Code Environment.OS.VersionStringausgegeben Microsoft Windows NT 6.3.9600.0. Laut der Microsoft-Dokumentation lautet die Versionsnummer von Windows 10. 10.0Warum erkennt VB.NET Windows 10 als Windows 8.1?

Ich habe es systeminfo | findstr /C:"OS"in der Eingabeaufforderung gemacht und es hat den korrekten Wert von 10.0.10240 N/A Build 10240"OS Version" zurückgegeben.

8
Weil es die Tatsache aufgreift, dass Sie ein Upgrade von Windows 8.1 durchgeführt haben. Die von Ihnen verwendete Methode sucht in der Registrierung. Es funktioniert wie beabsichtigt. Es gibt eine geeignetere Funktion als die Umgebungsvariable zu verwenden, um zu ermitteln, welches Betriebssystem verwendet wird. * Ich kann keinen Code angeben, da dies nicht Stackoverflow ist. * Ramhound vor 9 Jahren 1
In den Kommentaren hier ist dasselbe Problem aufgetreten: https://msdn.microsoft.com/en-us/library/windows/desktop/ms724832%28v=vs.85%29.aspx Sie müssen das Manifest für Ihre Anwendung aktualisieren . MC10 vor 9 Jahren 1
** Sie verwenden es auch falsch. ** Dies sollte bei Stackoverflow vorbei sein, da es ein Codierungsproblem ist und obwohl ich vermute, dass die Verwendung der Umgebungsvariable immer noch der falsche Weg ist, die Manifest-Datei eindeutig nicht richtig ist. Ramhound vor 9 Jahren 0
@Ramhound Ja, ich dachte, das könnte der Fall gewesen sein. Ich weiß, dass nach einem Monat der Aktualisierung auf Windows 10 Windows 8.1 entfernt wurde. Bedeutet das, dass die Versionsnummer korrekt ist? Dog Lover vor 9 Jahren 0
Die Versionsnummer ist korrekt. Wie bereits erwähnt, lesen Sie die Registry, die nicht aktualisiert wurde und nicht aktualisiert wurde, es sei denn, es war eine saubere Installation von Windows 10. Gehen Sie diese Aufgabe auf eine andere Weise vor, verwenden Sie sie also nicht die Umgebungsvariable. Ramhound vor 9 Jahren 0
@ Ramhound: Es ist definitiv nicht korrekt. Nach dem Upgrade auf Windows 10 sollten Sie Windows 10 haben, nicht Windows 8.1 ... Nun, ok, soweit die Theorie ... Quandary vor 8 Jahren 0
@Quandary - Außer dass die Funktion, die verwendet wurde, wie vorgesehen funktionierte. Ramhound vor 8 Jahren 0

4 Antworten auf die Frage

3
RookieTEC9

Weil es die Tatsache aufgreift, dass Sie ein Upgrade von Windows 8.1 durchgeführt haben. Die von Ihnen verwendete Methode sucht in der Registrierung. Es funktioniert wie beabsichtigt. Es gibt eine geeignetere Funktion als die Umgebungsvariable zu verwenden, um zu ermitteln, welches Betriebssystem verwendet wird. Ich kann keinen Code bereitstellen, da dies nicht Stackoverflow ist

- Ramhound 26. August um 1:12

Das ist die Antwort auf den Punkt. Während des Upgrades ändert die Registry die Build-Nummer nicht von der alten in die neue. Es haftet einfach.

Mit anderen Worten, das Upgrade funktioniert nicht richtig ... Nun, im Westen nichts Neues;) Quandary vor 8 Jahren 2
0
egray

Um wieder auf die Stammfrage zurückzukommen ... Ich verwende Windows Management Instrumentation (WMI), um die Windows-Versionsnummer in der von Ihnen erwarteten Art und Weise zu generieren. Beispielsweise meldet es 10.0.10586

Hier ist ein kurzer Code-Ausschnitt

Public Class OS  ' Use Windows Management Instrumentation (WMI) to get the OS version Public Shared Function GetOSVersion() As String Dim answer As String = ""  ' add Imports System.Management and add a resource to System.Management Dim osClass As New ManagementClass("Win32_OperatingSystem") For Each queryObj As ManagementObject In osClass.GetInstances() answer = DirectCast(queryObj.GetPropertyValue("Version"), String) Next  Return answer End Function End Class 
-1
user319563

6.3 ist die interne Version von Windows, aus der hervorgeht, dass es seit Windows 7 keine größeren Versionen gab, im Gegensatz zu dem, was Sie von Microsoft erwarten. Die Namen Windows 7, 8, 10 usw. sind nur Marketingnamen. Sie beschlossen, 9 zu überspringen, um Mac OS X zu entsprechen. Die tatsächliche Versionsnummer ist jedoch 6,3

Es gibt viele verschiedene Gründe, warum sie v9 übersprungen haben (ein besonders netter Grund war, dass viele ältere Apps die 9 sehen würden und fälschlicherweise das Betriebssystem Windows 95/98 hielten), aber ich glaube nicht, dass sie dies jemals bestätigt oder dementiert haben ). Versuchen Sie, in Ihren Antworten keine zufälligen Spekulationen zu verwenden - Quellen sind am besten :) Mikey T.K. vor 8 Jahren 1
-1
Theo Vroom

Ich habe Windows 10 (Jubiläumsausgabe 1607) von Grund auf installiert und der Registry-Eintrag "currentversion" meldet ebenfalls 6.3, aber "ver" meldet beispielsweise "10.0.14393"

BTW 1) Ich habe gelesen, dass die Windows 10-Vorschau 6.4 war

Übrigens 2) Ich habe Windows 10 als Hyper-V-VM auf Windows Server 2012 R2 installiert, glaube aber nicht, dass dies irgendetwas damit zu tun hat.

"Ich habe gelesen, dass die Windows 10-Vorschau 6.4 war" - Sie haben falsch gelesen. Dies ist ein Kommentar, der nicht die Frage des Autors beantwortet, wenn Sie einen Kommentar hinterlassen möchten, verdienen Sie den erforderlichen Reputationspunkt. Ramhound vor 8 Jahren 0