DtWinVer Changelog

What's new in DtWinVer 2.68.0.1

Apr 7, 2024
  • Provided a new IsWindows11Version24H2 method.

New in DtWinVer 2.67.0.1 (Jan 27, 2024)

  • Provided a new IsWindowsServerVersion23H2 method.
  • Provided a new IsWindowsServer2025 method.
  • Provided a new IsWebWindowsServer2025 method.
  • Provided a new IsStandardWindowsServer2025 method.
  • Provided a new IsEnterpriseWindowsServer2025 method.
  • Provided a new IsDatacenterWindowsServer2025 method.
  • Provided a new IsDomainControllerWindowsServer2025 method.

New in DtWinVer 2.66.0.1 (Jan 4, 2024)

  • Updated copyright details.
  • UBR number is now reported by test app on Windows 11 and Windows Server 2022
  • Added support for the following product types: PRODUCT_AZURE_SERVER_AGENTBRIDGE & PRODUCT_AZURE_SERVER_NANOHOST.

New in DtWinVer 2.65.0.1 (Nov 11, 2023)

  • Updated logic to handle the product types: PRODUCT_SERVER_FOR_SB_SOLUTIONS, PRODUCT_SERVER_FOR_SB_SOLUTIONS_EM, PRODUCT_STANDARD_SERVER_SOLUTIONS, PRODUCT_STANDARD_SERVER_SOLUTIONS_CORE, PRODUCT_IOTENTERPRISES, PRODUCT_IOTENTERPRISESK, PRODUCT_IOTENTERPRISEK & PRODUCT_UNLICENSED.
  • Provided a new IsUnlicensed method.
  • Provided a new IsServerForSBSolutions method.
  • Provided a new IsServerSolutions method.

New in DtWinVer 2.64.0.1 (Nov 11, 2023)

  • Updated logic to handle the product types: PRODUCT_IOTENTERPRISESK, PRODUCT_IOTENTERPRISES, PRODUCT_IOTENTERPRISESEVAL & PRODUCT_IOTENTERPRISE

New in DtWinVer 2.63.0.1 (Nov 8, 2023)

  • Added support for the following product types: PRODUCT_IOTENTERPRISEK, PRODUCT_IOTENTERPRISESEVAL & PRODUCT_WNC

New in DtWinVer 2.62.0.1 (Jul 28, 2023)

  • Added support for the following product types: PRODUCT_VALIDATION.

New in DtWinVer 2.61.0.1 (Jul 13, 2023)

  • Updated copyright details.
  • Provided a new IsWindows11Version23H2 method.

New in DtWinVer 2.60.0.1 (Oct 2, 2022)

  • Fixed a bug in the demo app when reporting on Windows 11 version 22H2.

New in DtWinVer 2.59.0.1 (Sep 26, 2022)

  • Added support for the following product types: PRODUCT_IOTENTERPRISESK.

New in DtWinVer 2.58.0.1 (Jul 28, 2022)

  • Provided a new IsWindows10Version22H2 method.

New in DtWinVer 2.57.0.1 (Jun 8, 2022)

  • Provided a new IsWindows11Version22H2 method.

New in DtWinVer 2.56.0.1 (Mar 25, 2022)

  • Added support for the following product types: PRODUCT_XBOX_KEYSTONE.

New in DtWinVer 2.55 (Jan 20, 2022)

  • Reworked and renamed IsWindowsServervNext to IsWindowsServer2019ActiveDevelopmentBranch.
  • Provided new IsWindowsServer2022ActiveDevelopmentBranch method.
  • Reworked IsWindowsServer2022 method.
  • Reworked IsWindowsServer2019 method.
  • Reworked IsWindows11ActiveDevelopmentBranch method.
  • Reworked IsWindows10ActiveDevelopmentBranch method.
  • Reworked IsWindows11 method.

New in DtWinVer 2.54 (Jan 13, 2022)

  • Updated copyright details.
  • Added support in the test app for detecting DEVICEFAMILYDEVICEFORM_XBOX_SERIES_S.

New in DtWinVer 2.53 (Sep 11, 2021)

  • Provided a new IsWindowsServerVersion20H2 method.
  • Updated the logic in IsWindowsServerVersion2004.

New in DtWinVer 2.52 (Sep 5, 2021)

  • Provided new IsWindows11Version21H2 & IsWindows11ActiveDevelopmentBranch methods
  • Renamed IsWindows10RTM to IsWindows10Version1507

New in DtWinVer 2.51 (Jul 18, 2021)

  • Added support for the following product types: PRODUCT_AZURE_SERVER_CLOUDHOST, PRODUCT_AZURE_SERVER_CLOUDMOS, PRODUCT_CLOUDEDITIONN & PRODUCT_CLOUDEDITION.

New in DtWinVer 2.50 (Jul 17, 2021)

  • Provided a new IsWindows10Version21H2 method.

New in DtWinVer 2.49 (Jun 16, 2021)

  • Updated code to support Windows 11

New in DtWinVer 2.48 (Mar 3, 2021)

  • Provided new IsWindowsServer2022, IsWebWindowsServer2022, IsStandardWindowsServer2022, IsEnterpriseWindowsServer2022, IsDatacenterWindowsServer2022 & IsDomainControllerWindowsServer2022 methods

New in DtWinVer 2.47 (Feb 18, 2021)

  • Provided a new IsWindows10Version21H1 method.
  • Updated copyright details.

New in DtWinVer 2.46 (Nov 11, 2020)

  • Renamed IsWindows10Codename20H2 method to IsWindows10Version20H2.

New in DtWinVer 2.45 (Aug 12, 2020)

  • Added support for the following product types: PRODUCT_DATACENTER_SERVER_AZURE_EDITION and PRODUCT_DATACENTER_SERVER_CORE_AZURE_EDITION

New in DtWinVer 2.44 (Jul 26, 2020)

  • Added support for the following product types: PRODUCT_TURBINE_SERVER.

New in DtWinVer 2.43 (Jun 17, 2020)

  • Provided a new IsWindows10Codename20H2 method.

New in DtWinVer 2.42 (May 17, 2020)

  • Added support for Windows Server vNext (aka the version of Windows Server after Windows Server version 2004).

New in DtWinVer 2.41 (Apr 11, 2020)

  • Updated copyright details.
  • Fixed more Clang-Tidy static code analysis warnings in the code.
  • Added support for the following product types: PRODUCT_AZURESTACKHCI_SERVER_CORE
  • Added support for returning the information from the Windows 10 RtlGetDeviceFamilyInfoEnum API. This addition allows DtWinVer to return true version information even if the process in which the DtWinVer code is running with OS Version compatibility mode shims applied.

New in DtWinVer 2.40 (Dec 27, 2019)

  • Fixed various Clang-Tidy static code analysis warnings in the code.
  • Added support for detecting Windows 10 "Active Development Branch" as announced at https://blogs.windows.com/windowsexperience/2019/12/16/announcing-windows-10-insider-preview-build-19536/.
  • Renamed IsWindowsServerCodename20H1 method to IsWindowsServerVersion200

New in DtWinVer 2.39 (Dec 27, 2019)

  • Renamed IsWindows10Codename20H1 method to IsWindows10Version2004.

New in DtWinVer 2.38 (Oct 19, 2019)

  • Renamed IsWindowsServerCodename19H2 method to IsWindowsServerVersion1909.
  • Renamed IsLite method to IsWindows10X.

New in DtWinVer 2.37 (Sep 25, 2019)

  • Updated the logic in IsWindowsServerCodename19H2 to be consistent with IsWindows10Version1909.
  • Added a new IsWindowsServerCodename20H1 method.
  • Updated the logic in IsWindowsServerVersion1903 to be consistent with IsWindows10Version1903.

New in DtWinVer 2.36 (Sep 16, 2019)

  • Renamed IsWindows10Codename19H2 method to IsWindows10Version1909

New in DtWinVer 2.35 (Aug 20, 2019)

  • Fixed some further compiler warnings when using VC 2019 Preview v16.3.0 Preview 2.0

New in DtWinVer 2.34 (Aug 12, 2019)

  • Added support for PRODUCT_XBOX_SCARLETTHOSTOS product type.
  • Renamed product type value PRODUCT_XBOX_HOSTOS to PRODUCT_XBOX_DURANGOHOSTOS.

New in DtWinVer 2.33 (Jul 4, 2019)

  • Updated the detection logic in IsWindows10Version19H2 & IsWindows10Version1903 in light of the details about 19H2

New in DtWinVer 2.32 (May 21, 2019)

  • Added support for the following product types: PRODUCT_XBOX_SYSTEMOS, PRODUCT_XBOX_NATIVEOS, PRODUCT_XBOX_GAMEOS, PRODUCT_XBOX_ERAOS & PRODUCT_XBOX_HOSTOS

New in DtWinVer 2.31 (Apr 8, 2019)

  • Updated the detection logic in IsWindows10Version1903.
  • Added a new IsWindows10Version19H2 method.
  • Renamed IsWindowsServerCodename19H1 to IsWindowsServerVersion1903
  • Added a new IsWindowsServerCodename19H2 method.

New in DtWinVer 2.30 (Mar 6, 2019)

  • Updated the detection logic in IsWindows10Version1803, IsWindows10Version1809 and IsWindows10Version19H1
  • Renamed IsWindows10Codename19H1 method to IsWindows10Version1903.

New in DtWinVer 2.29 (Feb 20, 2019)

  • Updated the detection logic in IsWindowsServerVersion1809.
  • Updated the detection login in IsWindowsServerCodename19H1.

New in DtWinVer 2.28 (Feb 18, 2019)

  • Fixed a number of compiler warnings when using VS 2019 Preview.
  • Provided a new IsWindows10Codename20H1 method.

New in DtWinVer 2.27 (Jan 3, 2019)

  • Updated copyright details.
  • Added support for PRODUCT_HOLOGRAPHIC_BUSINESS & PRODUCT_IOTENTERPRISES

New in DtWinVer 2.26.0.1 (Dec 3, 2018)

  • Added a new IsWindowsServerCodename19H1 method.
  • Added support for PRODUCT_LITE.

New in DtWinVer 2.25 (Dec 3, 2018)

  • Added support for PRODUCT_IOTEDGEOS & PRODUCT_IOTENTERPRISE

New in DtWinVer 2.24.0.1 (Oct 15, 2018)

  • Added a new IsWindowsServerVersion1809 method
  • Reimplemented the IsWindowsServerVersion1709 & IsWindowsServerVersion1803 methods to explicitly check for these semi-annual Windows server editions

New in DtWinVer 2.23 (Sep 24, 2018)

  • Renamed PRODUCT_LEAN define to PRODUCT_CLOUDE
  • Removed defunct IsLean method
  • Fixed a number of compiler warnings when using VS 2017 15.8.5
  • Renamed IsWindows10Redstone5 method to IsWindows10Version1809

New in DtWinVer 2.22 (Jul 27, 2018)

  • Added support for PRODUCT_CLOUDEN
  • Provided a new IsWindows10Codename19H1 method.
  • Changed IsWindows10Redstone5 to IsWindows10CodenameRedstone5.

New in DtWinVer 2.21 (Jul 1, 2018)

  • Fixed a number of C++ core guidelines compiler warnings.
  • Added support for PRODUCT_IOTOS.

New in DtWinVer 2.20 (May 4, 2018)

  • Test code now reports the UBR number on Windows Server 2019.
  • Fixed up detection of Server Core for the following Product types: PRODUCT_STANDARD_SERVER_SOLUTIONS_CORE, PRODUCT_DATACENTER_A_SERVER_CORE, PRODUCT_STANDARD_A_SERVER_CORE, PRODUCT_DATACENTER_WS_SERVER_CORE, PRODUCT_STANDARD_WS_SERVER_CORE, PRODUCT_DATACENTER_EVALUATION_SERVER_CORE, PRODUCT_STANDARD_EVALUATION_SERVER_CORE & PRODUCT_AZURE_SERVER_CORE.
  • The value from GetProductInfo is now returned in the OS_VERSION_INFO structure.
  • Provided a new IsWindowsServerVersion1803 method.

New in DtWinVer 2.19 (Apr 27, 2018)

  • Added support for "Windows 10 Lean" as reported

New in DtWinVer 2.18 (Apr 23, 2018)

  • Fixed a bug in IsWindowsServer2019 when the computer is a domain controller. Thanks to Heiko Wetzel for reporting this issue.

New in DtWinVer 2.17 (Apr 1, 2018)

  • Renamed IsWindows10Redstone4 method to IsWindows10Version1803.

New in DtWinVer 2.16 (Mar 29, 2018)

  • Provided new IsWindowsServer2019, IsWebWindowsServer2019, IsStandardWindowsServer2019, IsEnterpriseWindowsServer2019, IsDatacenterWindowsServer2019 & IsDomainControllerWindowsServer2019 methods
  • Updated IsWindows10OrWindowsServer2016 method to account for Windows Server 2019

New in DtWinVer 2.15 (Feb 22, 2018)

  • Added support for PRODUCT_ANDROMEDA
  • Provided a new IsWindows10Redstone5 method.

New in DtWinVer 2.14 (Feb 5, 2018)

  • Updated copyright details.
  • Added support for PRODUCT_ONECOREUPDATEOS.

New in DtWinVer 2.13 (Dec 30, 2017)

  • Download now includes a VC 2017 solution and project files. These files now support ARM64 in addition to x86, x64 and ARM.
  • ARM64 binaries are now included in the download
  • Added support for detecting PROCESSOR_ARCHITECTURE_NEUTRAL, PROCESSOR_ARCHITECTURE_ARM64, PROCESSOR_ARCHITECTURE_ARM32_ON_WIN64 & PROCESSOR_ARCHITECTURE_IA32_ON_ARM64 architectures

New in DtWinVer 2.12 (Nov 13, 2017)

  • Added support for PRODUCT_HUBOS product type
  • Added support for detecting VER_SUITE_COMMUNICATIONS, VER_SUITE_SMALLBUSINESS_RESTRICTED & VER_SUITE_EMBEDDED_RESTRICTED. Note that there is a new VER_SUITE_MULTIUSERTS define in the latest Windows 10 SDK but it does not fit in the current WORD sized element in OSVERSIONINFOEX structure so I have not included any code to support this new define.

New in DtWinVer 2.11 (Oct 23, 2017)

  • Renamed IsWindows10Redstone3 method to IsWindows10Version1709.
  • Tested the code on Windows 10 version 1709.
  • Provided a new IsWindows10Redstone4 method.
  • Provided a new IsWindowsServerVersion1709 method.
  • Tested the code on Windows Server version 1709.

New in DtWinVer 2.10 (Sep 29, 2017)

  • Added support for PRODUCT_SERVERRDSH product type.

New in DtWinVer 1.96 (May 19, 2015)

  • Updated all code references of Windows Server 10 to Windows Server 2016.
  • Added support for the following product types: PRODUCT_PROFESSIONAL_EMBEDDED, PRODUCT_MOBILE_CORE, PRODUCT_EMBEDDED_INDUSTRY_EVAL, PRODUCT_EMBEDDED_INDUSTRY_E_EVAL, PRODUCT_EMBEDDED_EVAL, PRODUCT_EMBEDDED_E_EVAL, PRODUCT_NANO_SERVER, PRODUCT_CLOUD_STORAGE_SERVER, PRODUCT_CORE_CONNECTED, PRODUCT_PROFESSIONAL_STUDENT, PRODUCT_CORE_CONNECTED_N, PRODUCT_PROFESSIONAL_STUDENT_N, PRODUCT_CORE_CONNECTED_SINGLELANGUAGE, PRODUCT_CORE_CONNECTED_COUNTRYSPECIFIC, PRODUCT_CONNECTED_CAR, PRODUCT_INDUSTRY_HANDHELD, PRODUCT_PPI_PRO, PRODUCT_ARM64_SERVER, PRODUCT_EDUCATION, PRODUCT_EDUCATION_N, PRODUCT_IOTUAP, PRODUCT_CLOUD_HOST_INFRASTRUCTURE_SERVER, PRODUCT_ENTERPRISE_S, PRODUCT_ENTERPRISE_S_N, PRODUCT_PROFESSIONAL_S, PRODUCT_PROFESSIONAL_S_N, PRODUCT_ENTERPRISE_S_EVALUATION & PRODUCT_ENTERPRISE_S_N_EVALUATION.
  • Remove the word Installed from most of the methods.
  • The download now includes a Winver14.sln solution for Visual Studio 2015 RC. This now allows you to build an ARM binary of DtWinVer which you can deploy to Windows IoT Core on the Raspberry Pi 2. Also included is a precompiled ARM binary of DtWinVer.
  • Updated the code to clean compile on VS 2015 RC

New in DtWinVer 1.95 (May 19, 2015)

  • It turns out that the new detection code to detect Windows 8.1 with Bing was flawed in the previous release as the PRODUCT_CORE_* ProductInfo values just means the standard / core version of Windows 8.1. The code has now been updated to use a registry search to correctly detect if Windows 8.1 with Bing is installed.

New in DtWinVer 1.94 (May 19, 2015)

  • Updated the code to correctly handle / identify Windows 8.1 with Bing (aka CoreConnected). This applies to the ProductInfo values: PRODUCT_CORE_ARM, PRODUCT_CORE_N, PRODUCT_CORE_COUNTRYSPECIFIC, PRODUCT_CORE_SINGLELANGUAGE & PRODUCT_CORE. Thanks to Petr Stejskal for reporting this issue. The suite value that is used to identify this is COSVERSION_SUITE2_CORECONNECTED and the method IsCoreConnected.
  • The ProductInfo value PRODUCT_PRERELEASE_ARM now correctly sets the underlying processor type to ARM

New in DtWinVer 1.93 (Jan 19, 2015)

  • Updated copyright details.
  • Fixed up the COSVersion::IsWindows2000AdvancedServer method to correctly distinguish between server and client OSes.
  • Fixed up the COSVersion::IsEnterpriseWindowsServer2003 method to correctly distinguish between server and client OSes.
  • Fixed up the COSVersion::IsEnterpriseWindowsServer2003R2 method to correctly distinguish between server and client OSes.
  • Fixed up the COSVersion::IsEnterpriseWindowsServer2008 method to correctly distinguish between server and client OSes.
  • Fixed up the COSVersion::IsEnterpriseWindowsServer2008R2 method to correctly distinguish between server and client OSes.
  • Fixed up the COSVersion::IsEnterpriseWindowsServer2012 method to correctly distinguish between server and client OSes.
  • Fixed up the COSVersion::IsEnterpriseWindowsServer2012R2 method to correctly distinguish between server and client OSes.
  • Fixed up the COSVersion::IsEnterpriseWindowsServer10 method to correctly distinguish between server and client OSes.

New in DtWinVer 1.92 (Oct 2, 2014)

  • Updated code to support Windows 10 Technical Preview and Windows Server 10 Technical Preview.

New in DtWinVer 1.91 (Apr 14, 2014)

  • Updated copyright details
  • Updated code to compile cleanly using VS 2013
  • Updated code to report failure when compiled under Windows RT i.e. when the WINAPI_FAMILY preprocessor value is anything other than WINAPI_FAMILY_DESKTOP_APP
  • Added support to detect Windows 8.1 / 2012 R2 Update

New in DtWinVer 1.79 (Mar 5, 2009)

  • Updated the VC 2005 project file to use more reasonable default project settings
  • Updated copyright details
  • Includes provisional support for the Windows 7 Professional SKU. Note that the code currently assumes that the BUSINESS SKU value refers to the newly documented SKU of "Windows 7 Professional". I have not found any information to confirm or deny this but this should become clearer as we approach the release of "Windows 7. Any feedback on this would be much appreciated.