The easiest way to quickly find out the version and build number of the Windows OS that is installed on your computer is to press the Win+R
on the keyboard and run the winver
command.
The following screenshot shows that Windows 10 version 22H2 is installed on the computer (build number 19045.3324). Both the release number and the build number of Windows allow you to uniquely identify the version of the operating system installed on your computer.
A table with all version numbers (releases) and builds of Windows 10 is available here https://learn.microsoft.com/en-us/windows/release-health/release-information.
You can also open the System Information dialogue using a Win+Pause
keyboard shortcut. This will take you to the appropriate Settings
section (System -> About) or the System Properties window (depending on your version of Windows).
Starting with Windows 10 20H2, the classic System Properties applet in the Control Panel is hidden and cannot be accessed directly. To open it, use the command:
shell:::{bb06c0e4-d293-4f75-8a90-cb05b6477eee}
Also, you can get info about your computer’s Windows build and version from the command line.
Use the systeminfo
command.
You can also filter the output of this command:
systeminfo | findstr /B /C:"OS Name" /B /C:"OS Version"
Alternatively, you can use the WMI command:
wmic os get Caption, Version, BuildNumber, OSArchitecture
The PowerShell equivalent of the systeminfo
command is the Get-ComputerInfo cmdlet:
Get-ComputerInfo | select OsName, OsVersion, WindowsVersion, OsBuildNumber, OsArchitecture
The Get-ComputerInfo cmdlet has a drawback of being slow. If you need to promptly verify the Windows version and build from a PowerShell script, it is advisable to use the commands below.
You can obtain the Windows version via the environment variable:
[System.Environment]::OSVersion.Version
Or from the WMI class:
Get-WmiObject -Class Win32_OperatingSystem | fl -Property Caption, Version, BuildNumber
In new versions of PowerShell Core, you must use Get-CimInstance instead of the Get-WmiObject cmdlet:
Get-CimInstance Win32_OperatingSystem | fl -Property Caption, Version, BuildNumber, OSArchitecture
To find out the build and version number of Windows, you can also check the registry.
Reg Query "HKLMSOFTWAREMicrosoftWindows NTCurrentVersion" /v ProductName
Reg Query "HKLMSOFTWAREMicrosoftWindows NTCurrentVersion" /v DisplayVersion
Reg Query "HKLMSOFTWAREMicrosoftWindows NTCurrentVersion" /v CurrentBuild
Or:
Get-ItemProperty -Path "HKLM:SOFTWAREMicrosoftWindows NTCurrentVersion"| select ProductName, DisplayVersion, CurrentBuild
You can use the ProductVersion
, TargetReleaseVersion
, and TargetReleaseVersionInfo
registry parameters in the HKLMSOFTWAREPoliciesMicrosoftWindowsWindowsUpdate registry key to specify the maximum target Windows build your device can automatically upgrade to. These options can be used to prevent an automatic update to Windows 11.
Use PowerShell Remoting to check the Windows version on remote hosts:
Invoke-Command -ScriptBlock {Get-ItemProperty 'HKLM:SOFTWAREMicrosoftWindows NTCurrentVersion' | Select-Object ProductName, ReleaseID, CurrentBuild} -ComputerName dskt-pc01
Or use WMI/CIM:
Get-ciminstance Win32_OperatingSystem -ComputerName dskt-pc01 | Select PSComputerName, Caption, OSArchitecture, Version, BuildNumber | FL
If your computer is joined to the Active Directory domain, you can get the Windows version and build from the computer’s attributes in AD (Getting Windows OS build numbers from Active Directory).