maphew

Determine Windows Version

Who would have thought a simple question like "what version of windows am I running under?" would be so complicated?

This stub retrieves the number as a string. A complete working script which parses ver and responds accordingly: 

For practical purposes you might be better off with Simon Sheppard's approach.

@echo off for /f "tokens=2 delims=[]" %%x in ('ver') do (
  set WINVER=%%x
  set WINVER=%WINVER:Version =% 
  echo CMD version is %winver%
  )

A one liner for the major number (reg.exe not always available, XP and newer I think):

reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v CurrentVersion
References#
Windows Version Table#

Scraped from http://en.wikipedia.org/wiki/Microso...ne_of_releases

Product name Latest version General availability date  
       
Windows 1.0 1.01 November 20, 1985  
Windows 2.0 2.03 December 9, 1987  
Windows 2.1 2.11 May 27, 1988  
Windows 3.0 3.0 May 22, 1990  
Windows 3.1 3.1 April 6, 1992  
Windows For Workgroups 3.1 3.1 October 1992  
Windows NT 3.1 NT 3.1.528 July 27, 1993  
Windows For Workgroups 3.11 3.11 August 11, 1993  
Windows 3.2 3.2 November 22, 1993  
Windows NT 3.5 NT 3.5.807 September 21, 1994  
Windows NT 3.51 NT 3.51.1057 May 30, 1995  
Windows 95 4.0.950 August 24, 1995  
Windows NT 4.0 NT 4.0.1381 July 31, 1996  
Windows 98 4.10.1998 June 25, 1998  
Windows 98 SE 4.10.2222 May 5, 1999  
Windows 2000 NT 5.0.2195 February 17, 2000  
Windows Me 4.90.3000 September 14, 2000  
Windows XP NT 5.1.2600 October 25, 2001  
Windows XP 64-bit Edition NT 5.2.3790 March 28, 2003  
Windows Server 2003 NT 5.2.3790 April 24, 2003  
Windows XP Professional x64 Edition NT 5.2.3790 April 25, 2005  
Windows Fundamentals for Legacy PCs NT 5.1.2600 July 8, 2006  
Windows Vista NT 6.0.6003 January 30, 2007  
Windows Home Server NT 5.2.4500 November 4, 2007  
Windows Server 2008 NT 6.0.6003 February 27, 2008  
Windows 7 NT 6.1.7601 October 22, 2009  
Windows Server 2008 R2 NT 6.1.7601 October 22, 2009  
Windows Home Server 2011 NT 6.1.8400 April 6, 2011  
Windows Server 2012 NT 6.2.9200 September 4, 2012  
Windows 8 NT 6.2.9200 October 26, 2012  
Windows 8.1 NT 6.3.9600 October 17, 2013  
Windows Server 2012 R2 NT 6.3.9600 October 18, 2013  
Windows 10 NT 10.0.18363 July 29, 2015  
Windows Server 2016 NT 10.0.14393 October 12, 2016  
Windows Server 2019 NT 10.0.17763 October 2, 2018  

date: 2021-06-21