[misc] improve Windows edition reporting

* Closes #1808
* Also update rufus-next to 3.18
This commit is contained in:
Pete Batard 2021-10-27 09:49:20 +01:00
parent ca4e009ffc
commit 3aac3f5583
No known key found for this signature in database
GPG Key ID: 38E0CF5E69EDD671
4 changed files with 60 additions and 40 deletions

20
configure vendored
View File

@ -1,6 +1,6 @@
#! /bin/sh #! /bin/sh
# Guess values for system-dependent variables and create Makefiles. # Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.71 for rufus 3.17. # Generated by GNU Autoconf 2.71 for rufus 3.18.
# #
# Report bugs to <https://github.com/pbatard/rufus/issues>. # Report bugs to <https://github.com/pbatard/rufus/issues>.
# #
@ -611,8 +611,8 @@ MAKEFLAGS=
# Identity of this package. # Identity of this package.
PACKAGE_NAME='rufus' PACKAGE_NAME='rufus'
PACKAGE_TARNAME='rufus' PACKAGE_TARNAME='rufus'
PACKAGE_VERSION='3.17' PACKAGE_VERSION='3.18'
PACKAGE_STRING='rufus 3.17' PACKAGE_STRING='rufus 3.18'
PACKAGE_BUGREPORT='https://github.com/pbatard/rufus/issues' PACKAGE_BUGREPORT='https://github.com/pbatard/rufus/issues'
PACKAGE_URL='https://rufus.ie' PACKAGE_URL='https://rufus.ie'
@ -1268,7 +1268,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing. # Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh. # This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF cat <<_ACEOF
\`configure' configures rufus 3.17 to adapt to many kinds of systems. \`configure' configures rufus 3.18 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]... Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1335,7 +1335,7 @@ fi
if test -n "$ac_init_help"; then if test -n "$ac_init_help"; then
case $ac_init_help in case $ac_init_help in
short | recursive ) echo "Configuration of rufus 3.17:";; short | recursive ) echo "Configuration of rufus 3.18:";;
esac esac
cat <<\_ACEOF cat <<\_ACEOF
@ -1427,7 +1427,7 @@ fi
test -n "$ac_init_help" && exit $ac_status test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then if $ac_init_version; then
cat <<\_ACEOF cat <<\_ACEOF
rufus configure 3.17 rufus configure 3.18
generated by GNU Autoconf 2.71 generated by GNU Autoconf 2.71
Copyright (C) 2021 Free Software Foundation, Inc. Copyright (C) 2021 Free Software Foundation, Inc.
@ -1503,7 +1503,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake. running configure, to aid debugging if configure makes a mistake.
It was created by rufus $as_me 3.17, which was It was created by rufus $as_me 3.18, which was
generated by GNU Autoconf 2.71. Invocation command line was generated by GNU Autoconf 2.71. Invocation command line was
$ $0$ac_configure_args_raw $ $0$ac_configure_args_raw
@ -2767,7 +2767,7 @@ fi
# Define the identity of the package. # Define the identity of the package.
PACKAGE='rufus' PACKAGE='rufus'
VERSION='3.17' VERSION='3.18'
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
@ -5205,7 +5205,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their # report actual input values of CONFIG_FILES etc. instead of their
# values after options handling. # values after options handling.
ac_log=" ac_log="
This file was extended by rufus $as_me 3.17, which was This file was extended by rufus $as_me 3.18, which was
generated by GNU Autoconf 2.71. Invocation command line was generated by GNU Autoconf 2.71. Invocation command line was
CONFIG_FILES = $CONFIG_FILES CONFIG_FILES = $CONFIG_FILES
@ -5261,7 +5261,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config='$ac_cs_config_escaped' ac_cs_config='$ac_cs_config_escaped'
ac_cs_version="\\ ac_cs_version="\\
rufus config.status 3.17 rufus config.status 3.18
configured by $0, generated by GNU Autoconf 2.71, configured by $0, generated by GNU Autoconf 2.71,
with options \\"\$ac_cs_config\\" with options \\"\$ac_cs_config\\"

View File

@ -1,4 +1,4 @@
AC_INIT([rufus], [3.17], [https://github.com/pbatard/rufus/issues], [rufus], [https://rufus.ie]) AC_INIT([rufus], [3.18], [https://github.com/pbatard/rufus/issues], [rufus], [https://rufus.ie])
AM_INIT_AUTOMAKE([-Wno-portability foreign no-dist no-dependencies]) AM_INIT_AUTOMAKE([-Wno-portability foreign no-dist no-dependencies])
AC_CONFIG_SRCDIR([src/rufus.c]) AC_CONFIG_SRCDIR([src/rufus.c])
AC_CONFIG_MACRO_DIR([m4]) AC_CONFIG_MACRO_DIR([m4])

View File

@ -33,7 +33,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
IDD_DIALOG DIALOGEX 12, 12, 232, 326 IDD_DIALOG DIALOGEX 12, 12, 232, 326
STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_ACCEPTFILES EXSTYLE WS_EX_ACCEPTFILES
CAPTION "Rufus 3.17.1847" CAPTION "Rufus 3.18.1848"
FONT 9, "Segoe UI Symbol", 400, 0, 0x0 FONT 9, "Segoe UI Symbol", 400, 0, 0x0
BEGIN BEGIN
LTEXT "Drive Properties",IDS_DRIVE_PROPERTIES_TXT,8,6,53,12,NOT WS_GROUP LTEXT "Drive Properties",IDS_DRIVE_PROPERTIES_TXT,8,6,53,12,NOT WS_GROUP
@ -395,8 +395,8 @@ END
// //
VS_VERSION_INFO VERSIONINFO VS_VERSION_INFO VERSIONINFO
FILEVERSION 3,17,1847,0 FILEVERSION 3,18,1848,0
PRODUCTVERSION 3,17,1847,0 PRODUCTVERSION 3,18,1848,0
FILEFLAGSMASK 0x3fL FILEFLAGSMASK 0x3fL
#ifdef _DEBUG #ifdef _DEBUG
FILEFLAGS 0x1L FILEFLAGS 0x1L
@ -414,13 +414,13 @@ BEGIN
VALUE "Comments", "https://rufus.ie" VALUE "Comments", "https://rufus.ie"
VALUE "CompanyName", "Akeo Consulting" VALUE "CompanyName", "Akeo Consulting"
VALUE "FileDescription", "Rufus" VALUE "FileDescription", "Rufus"
VALUE "FileVersion", "3.17.1847" VALUE "FileVersion", "3.18.1848"
VALUE "InternalName", "Rufus" VALUE "InternalName", "Rufus"
VALUE "LegalCopyright", "© 2011-2021 Pete Batard (GPL v3)" VALUE "LegalCopyright", "© 2011-2021 Pete Batard (GPL v3)"
VALUE "LegalTrademarks", "https://www.gnu.org/licenses/gpl-3.0.html" VALUE "LegalTrademarks", "https://www.gnu.org/licenses/gpl-3.0.html"
VALUE "OriginalFilename", "rufus-3.17.exe" VALUE "OriginalFilename", "rufus-3.18.exe"
VALUE "ProductName", "Rufus" VALUE "ProductName", "Rufus"
VALUE "ProductVersion", "3.17.1847" VALUE "ProductVersion", "3.18.1848"
END END
END END
BLOCK "VarFileInfo" BLOCK "VarFileInfo"

View File

@ -255,61 +255,81 @@ static const char* GetEdition(DWORD ProductType)
case 0x00000004: return "Enterprise"; case 0x00000004: return "Enterprise";
case 0x00000005: return "Home Basic N"; case 0x00000005: return "Home Basic N";
case 0x00000006: return "Business"; case 0x00000006: return "Business";
case 0x00000007: return "Standard Server"; case 0x00000007: return "Server Standard";
case 0x00000008: return "Datacenter Server"; case 0x00000008: return "Server Datacenter";
case 0x00000009: return "Smallbusiness Server"; case 0x00000009: return "Smallbusiness Server";
case 0x0000000A: return "Enterprise Server"; case 0x0000000A: return "Server Enterprise";
case 0x0000000B: return "Starter"; case 0x0000000B: return "Starter";
case 0x0000000C: return "Server Datacenter (Core)";
case 0x0000000D: return "Server Standard (Core)";
case 0x0000000E: return "Server Enterprise (Core)";
case 0x00000010: return "Business N"; case 0x00000010: return "Business N";
case 0x00000011: return "Web Server"; case 0x00000011: return "Web Server";
case 0x00000012: return "Cluster Server"; case 0x00000012: return "HPC Edition";
case 0x00000013: return "Home Server"; case 0x00000013: return "Storage Server (Essentials)";
case 0x0000001A: return "Home Premium N"; case 0x0000001A: return "Home Premium N";
case 0x0000001B: return "Enterprise N"; case 0x0000001B: return "Enterprise N";
case 0x0000001C: return "Ultimate N"; case 0x0000001C: return "Ultimate N";
case 0x00000022: return "Home Premium Server"; case 0x00000022: return "Home Server";
case 0x00000024: return "Server Standard without Hyper-V";
case 0x00000025: return "Server Datacenter without Hyper-V";
case 0x00000026: return "Server Enterprise without Hyper-V";
case 0x00000027: return "Server Datacenter without Hyper-V (Core)";
case 0x00000028: return "Server Standard without Hyper-V (Core)";
case 0x00000029: return "Server Enterprise without Hyper-V (Core)";
case 0x0000002A: return "Hyper-V Server";
case 0x0000002F: return "Starter N"; case 0x0000002F: return "Starter N";
case 0x00000030: return "Pro"; case 0x00000030: return "Pro";
case 0x00000031: return "Pro N"; case 0x00000031: return "Pro N";
case 0x00000034: return "Server Solutions Premium";
case 0x00000035: return "Server Solutions Premium (Core)";
case 0x00000040: return "Server Hyper Core V";
case 0x00000042: return "Starter E"; case 0x00000042: return "Starter E";
case 0x00000043: return "Home Basic E"; case 0x00000043: return "Home Basic E";
case 0x00000044: return "Premium E"; case 0x00000044: return "Premium E";
case 0x00000045: return "Pro E"; case 0x00000045: return "Pro E";
case 0x00000046: return "Enterprise E"; case 0x00000046: return "Enterprise E";
case 0x00000047: return "Ultimate E"; case 0x00000047: return "Ultimate E";
case 0x00000048: return "Enterprise Eval"; case 0x00000048: return "Enterprise (Eval)";
case 0x00000054: return "Enterprise N Eval"; case 0x0000004F: return "Server Standard (Eval)";
case 0x00000050: return "Server Datacenter (Eval)";
case 0x00000054: return "Enterprise N (Eval)";
case 0x00000057: return "Thin PC"; case 0x00000057: return "Thin PC";
case 0x00000058: case 0x00000059: case 0x0000005A: case 0x0000005B: case 0x0000005C: return "Embedded"; case 0x00000058: case 0x00000059: case 0x0000005A: case 0x0000005B: case 0x0000005C: return "Embedded";
case 0x00000065: return "Core"; case 0x00000062: return "Home N";
case 0x00000067: return "Professional WMC"; case 0x00000063: return "Home China";
case 0x00000064: return "Home Single Language";
case 0x00000065: return "Home";
case 0x00000067: return "Pro with Media Center";
case 0x00000069: case 0x0000006A: case 0x0000006B: case 0x0000006C: return "Embedded"; case 0x00000069: case 0x0000006A: case 0x0000006B: case 0x0000006C: return "Embedded";
case 0x0000006F: return "Core Connected"; case 0x0000006F: return "Home Connected";
case 0x00000070: return "Pro Student"; case 0x00000070: return "Pro Student";
case 0x00000071: return "Core Connected N"; case 0x00000071: return "Home Connected N";
case 0x00000072: return "Pro Student N"; case 0x00000072: return "Pro Student N";
case 0x00000073: return "Core Connected Single Language"; case 0x00000073: return "Home Connected Single Language";
case 0x00000074: return "Core Connected China"; case 0x00000074: return "Home Connected China";
case 0x00000079: return "Edu"; case 0x00000079: return "Education";
case 0x0000007A: return "Edu N"; case 0x0000007A: return "Education N";
case 0x0000007D: return "Enterprise S"; case 0x0000007D: return "Enterprise LTSB";
case 0x0000007E: return "Enterprise S N"; case 0x0000007E: return "Enterprise LTSB N";
case 0x0000007F: return "Pro S"; case 0x0000007F: return "Pro S";
case 0x00000080: return "Pro S N"; case 0x00000080: return "Pro S N";
case 0x00000081: return "Enterprise S Eval"; case 0x00000081: return "Enterprise LTSB (Eval)";
case 0x00000082: return "Enterprise S N Eval"; case 0x00000082: return "Enterprise LTSB N (Eval)";
case 0x0000008A: return "Pro Single Language"; case 0x0000008A: return "Pro Single Language";
case 0x0000008B: return "Pro China"; case 0x0000008B: return "Pro China";
case 0x0000008C: return "Enterprise Subscription"; case 0x0000008C: return "Enterprise Subscription";
case 0x0000008D: return "Enterprise Subscription N"; case 0x0000008D: return "Enterprise Subscription N";
case 0x00000091: return "Server Datacenter SA (Core)";
case 0x00000092: return "Server Standard SA (Core)";
case 0x00000095: return "Utility VM"; case 0x00000095: return "Utility VM";
case 0x000000A1: return "Pro Workstation"; case 0x000000A1: return "Pro for Workstations";
case 0x000000A2: return "Pro Workstation N"; case 0x000000A2: return "Pro for Workstations N";
case 0x000000A4: return "Pro for Education"; case 0x000000A4: return "Pro for Education";
case 0x000000A5: return "Pro for Education N"; case 0x000000A5: return "Pro for Education N";
case 0x000000AB: return "Enterprise G"; // I swear Microsoft are just making up editions... case 0x000000AB: return "Enterprise G"; // I swear Microsoft are just making up editions...
case 0x000000AC: return "Enterprise G N"; case 0x000000AC: return "Enterprise G N";
case 0x000000B6: return "Core OS"; case 0x000000B6: return "Home OS";
case 0x000000B7: return "Cloud E"; case 0x000000B7: return "Cloud E";
case 0x000000B8: return "Cloud E N"; case 0x000000B8: return "Cloud E N";
case 0x000000BD: return "Lite"; case 0x000000BD: return "Lite";