From c34cbab3b554c22105f4a9b45baf33cfd40dab81 Mon Sep 17 00:00:00 2001 From: Pete Batard Date: Fri, 22 Jul 2022 13:01:22 +0100 Subject: [PATCH] [wue] remove non-existent min disk size bypass * Closes #1990 * Also group all of SB, TPM and min RAM into a single option and update French translation --- res/loc/po/fr-FR.po | 26 +++++++++++++++----------- res/loc/rufus.loc | 12 ++++++------ src/format.c | 8 +++----- src/rufus.c | 24 +++++++++++------------- src/rufus.h | 7 +++---- src/rufus.rc | 10 +++++----- 6 files changed, 43 insertions(+), 44 deletions(-) diff --git a/res/loc/po/fr-FR.po b/res/loc/po/fr-FR.po index b18803d3..b476151a 100644 --- a/res/loc/po/fr-FR.po +++ b/res/loc/po/fr-FR.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: 3.14\n" "Report-Msgid-Bugs-To: pete@akeo.ie\n" -"POT-Creation-Date: 2022-06-24 17:34+0100\n" -"PO-Revision-Date: 2022-06-30 11:26+0100\n" +"POT-Creation-Date: 2022-07-22 11:06+0100\n" +"PO-Revision-Date: 2022-07-22 11:14+0100\n" "Last-Translator: \n" "Language-Team: \n" "Language: fr_FR\n" @@ -13,7 +13,7 @@ msgstr "" "X-Poedit-SourceCharset: UTF-8\n" "X-Rufus-LanguageName: French (Français)\n" "X-Rufus-LCID: 0x040c, 0x080c, 0x0c0c, 0x100c, 0x140c, 0x180c, 0x1c0c, 0x200c, 0x240c, 0x280c, 0x2c0c, 0x300c, 0x340c, 0x380c, 0xe40c\n" -"X-Generator: Poedit 3.1\n" +"X-Generator: Poedit 3.1.1\n" #. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT msgid "Drive Properties" @@ -1805,21 +1805,25 @@ msgid "Customize Windows installation?" msgstr "Personnaliser l'installation de Windows ?" #. • MSG_328 -msgid "Remove requirement for Secure Boot and TPM 2.0" -msgstr "Supprimer la nécessité d'avoir Secure Boot et TPM 2.0" - -#. • MSG_329 -msgid "Remove requirement for 4GB+ RAM and 64GB+ disk" -msgstr "Supprimer la nécessité d'avoir 4Go+ de RAM et 64Go+ de disque" +msgid "Remove requirement for 4GB+ RAM, Secure Boot and TPM 2.0" +msgstr "Supprimer la nécessité d'avoir 4Go+ de RAM, Secure Boot et TPM 2.0" #. • MSG_330 msgid "Remove requirement for an online Microsoft account" -msgstr "Désactiver la collecte de données (Élimine les questions sur la vie privée)" +msgstr "Supprimer la nécessité d'utiliser un compte Microsoft en ligne" #. • MSG_331 msgid "Disable data collection (Skip privacy questions)" -msgstr "Supprimer la nécessité d'utiliser un compte Microsoft en ligne" +msgstr "Désactiver la collecte de données (Supprime les questions de confidentialité)" #. • MSG_332 msgid "Prevent Windows To Go from accessing internal disks" msgstr "Empêcher Windows To Go d'accéder aux disques internes" + +#. • MSG_333 +msgid "Set a local account using the same name as this user's" +msgstr "Définir un compte local utilisant le même nom que celui de cet utilisateur" + +#. • MSG_334 +msgid "Set regional options to the same values as this user's" +msgstr "Définir les options régionales avec les mêmes valeurs que celles de cet utilisateur" diff --git a/res/loc/rufus.loc b/res/loc/rufus.loc index 7d948de0..dfad6924 100644 --- a/res/loc/rufus.loc +++ b/res/loc/rufus.loc @@ -585,8 +585,7 @@ t MSG_322 "Unable to open or read '%s'" t MSG_325 "Applying Windows customization: %s" t MSG_326 "Windows User Experience" t MSG_327 "Customize Windows installation?" -t MSG_328 "Remove requirement for Secure Boot and TPM 2.0" -t MSG_329 "Remove requirement for 4GB+ RAM and 64GB+ disk" +t MSG_328 "Remove requirement for 4GB+ RAM, Secure Boot and TPM 2.0" t MSG_330 "Remove requirement for an online Microsoft account" t MSG_331 "Disable data collection (Skip privacy questions)" t MSG_332 "Prevent Windows To Go from accessing internal disks" @@ -4308,11 +4307,12 @@ t MSG_322 "Impossible d'ouvrir ou de lire '%s'" t MSG_325 "Application des options de personnalisation de Windows: %s" t MSG_326 "Expérience de l'utilisateur Windows" t MSG_327 "Personnaliser l'installation de Windows ?" -t MSG_328 "Supprimer la nécessité d'avoir Secure Boot et TPM 2.0" -t MSG_329 "Supprimer la nécessité d'avoir 4Go+ de RAM et 64Go+ de disque" -t MSG_330 "Désactiver la collecte de données (Élimine les questions sur la vie privée)" -t MSG_331 "Supprimer la nécessité d'utiliser un compte Microsoft en ligne" +t MSG_328 "Supprimer la nécessité d'avoir 4Go+ de RAM, Secure Boot et TPM 2.0" +t MSG_330 "Supprimer la nécessité d'utiliser un compte Microsoft en ligne" +t MSG_331 "Désactiver la collecte de données (Supprime les questions de confidentialité)" t MSG_332 "Empêcher Windows To Go d'accéder aux disques internes" +t MSG_333 "Définir un compte local utilisant le même nom que celui de cet utilisateur" +t MSG_334 "Définir les options régionales avec les mêmes valeurs que celles de cet utilisateur" ######################################################################### l "de-DE" "German (Deutsch)" 0x0407, 0x0807, 0x0c07, 0x1007, 0x1407 diff --git a/src/format.c b/src/format.c index 3c7a7529..c99a2ab6 100644 --- a/src/format.c +++ b/src/format.c @@ -1554,7 +1554,7 @@ BOOL ApplyWindowsCustomization(char drive_letter, int flags) goto out; } - if (flags & (UNATTEND_SECUREBOOT_TPM | UNATTEND_MINRAM_MINDISK)) { + if (flags & UNATTEND_SECUREBOOT_TPM_MINRAM) { // Try to create the registry keys directly, and fallback to using unattend // if that fails (which the Windows Store version is expected to do). static_sprintf(path, "%s\\Windows\\System32\\config\\SYSTEM", mount_path); @@ -1582,8 +1582,6 @@ BOOL ApplyWindowsCustomization(char drive_letter, int flags) } for (i = 0; i < ARRAYSIZE(bypass_name); i++) { - if (!(flags & (1 << (i / 2)))) - continue; status = RegSetValueExA(hSubKey, bypass_name[i], 0, REG_DWORD, (LPBYTE)&dwVal, sizeof(DWORD)); if (status != ERROR_SUCCESS) { SetLastError(status); @@ -1596,11 +1594,11 @@ BOOL ApplyWindowsCustomization(char drive_letter, int flags) // We were successfull in creating the keys so disable the windowsPE section from unattend.xml // We do this by replacing '' with '' // (provided that the registry key creation was the only item for this pass) - if ((flags & UNATTEND_WINPE_SETUP_MASK) == (UNATTEND_SECUREBOOT_TPM | UNATTEND_MINRAM_MINDISK)) { + if ((flags & UNATTEND_WINPE_SETUP_MASK) == UNATTEND_SECUREBOOT_TPM_MINRAM) { if (replace_in_token_data(unattend_xml_path, " entries from windowsPE (and only windowsPE). diff --git a/src/rufus.c b/src/rufus.c index 6ae2fe64..35bd9372 100755 --- a/src/rufus.c +++ b/src/rufus.c @@ -138,7 +138,7 @@ StrArray BlockingProcess, ImageList; // Number of steps for each FS for FCC_STRUCTURE_PROGRESS const int nb_steps[FS_MAX] = { 5, 5, 12, 1, 10, 1, 1, 1, 1 }; const char* flash_type[BADLOCKS_PATTERN_TYPES] = { "SLC", "MLC", "TLC" }; -const char* bypass_name[4] = { "BypassTPMCheck", "BypassSecureBootCheck", "BypassRAMCheck", "BypassStorageCheck" }; +const char* bypass_name[] = { "BypassTPMCheck", "BypassSecureBootCheck", "BypassRAMCheck" }; RUFUS_DRIVE rufus_drive[MAX_DRIVES] = { 0 }; // TODO: Remember to update copyright year in stdlg's AboutCallback() WM_INITDIALOG, @@ -1293,16 +1293,16 @@ static char* CreateUnattendXml(int arch, int flags) fprintf(fd, " \n"); fprintf(fd, " \n"); fprintf(fd, " \n"); - fprintf(fd, " \n"); - for (i = 0; i < ARRAYSIZE(bypass_name); i++) { - if (!(flags & (1 << (i/2)))) - continue; - fprintf(fd, " \n"); - fprintf(fd, " %d\n", order++); - fprintf(fd, " reg add HKLM\\SYSTEM\\Setup\\LabConfig /v %s /t REG_DWORD /d 1 /f\n", bypass_name[i]); - fprintf(fd, " \n"); + if (flags & UNATTEND_SECUREBOOT_TPM_MINRAM) { + fprintf(fd, " \n"); + for (i = 0; i < ARRAYSIZE(bypass_name); i++) { + fprintf(fd, " \n"); + fprintf(fd, " %d\n", order++); + fprintf(fd, " reg add HKLM\\SYSTEM\\Setup\\LabConfig /v %s /t REG_DWORD /d 1 /f\n", bypass_name[i]); + fprintf(fd, " \n"); + } + fprintf(fd, " \n"); } - fprintf(fd, " \n"); fprintf(fd, " \n"); fprintf(fd, " \n"); } @@ -1732,9 +1732,7 @@ static DWORD WINAPI BootCheckThread(LPVOID param) uint8_t map[8] = { 0 }, b = 1; StrArrayCreate(&options, 4); StrArrayAdd(&options, lmprintf(MSG_328), TRUE); - MAP_BIT(UNATTEND_SECUREBOOT_TPM); - StrArrayAdd(&options, lmprintf(MSG_329), TRUE); - MAP_BIT(UNATTEND_MINRAM_MINDISK); + MAP_BIT(UNATTEND_SECUREBOOT_TPM_MINRAM); if (img_report.win_version.build >= 22500) { StrArrayAdd(&options, lmprintf(MSG_330), TRUE); MAP_BIT(UNATTEND_NO_ONLINE_ACCOUNT); diff --git a/src/rufus.h b/src/rufus.h index a29e8721..c9afd527 100644 --- a/src/rufus.h +++ b/src/rufus.h @@ -499,8 +499,7 @@ enum ArchType { }; // Windows User Experience (unattend.xml) flags and masks -#define UNATTEND_SECUREBOOT_TPM 0x00001 -#define UNATTEND_MINRAM_MINDISK 0x00002 +#define UNATTEND_SECUREBOOT_TPM_MINRAM 0x00001 #define UNATTEND_NO_ONLINE_ACCOUNT 0x00004 #define UNATTEND_NO_DATA_COLLECTION 0x00008 #define UNATTEND_OFFLINE_INTERNAL_DRIVES 0x00010 @@ -509,13 +508,13 @@ enum ArchType { #define UNATTEND_DEFAULT_MASK 0x0007F #define UNATTEND_WINDOWS_TO_GO 0x10000 // Special flag for Windows To Go -#define UNATTEND_WINPE_SETUP_MASK (UNATTEND_SECUREBOOT_TPM | UNATTEND_MINRAM_MINDISK) +#define UNATTEND_WINPE_SETUP_MASK (UNATTEND_SECUREBOOT_TPM_MINRAM) #define UNATTEND_SPECIALIZE_DEPLOYMENT_MASK (UNATTEND_NO_ONLINE_ACCOUNT) #define UNATTEND_OOBE_SHELL_SETUP_MASK (UNATTEND_NO_DATA_COLLECTION | UNATTEND_DUPLICATE_USER) #define UNATTEND_OOBE_INTERNATIONAL_MASK (UNATTEND_DUPLICATE_LOCALE) #define UNATTEND_OOBE_MASK (UNATTEND_OOBE_SHELL_SETUP_MASK | UNATTEND_OOBE_INTERNATIONAL_MASK) #define UNATTEND_OFFLINE_SERVICING_MASK (UNATTEND_OFFLINE_INTERNAL_DRIVES) -#define UNATTEND_DEFAULT_SELECTION_MASK (UNATTEND_SECUREBOOT_TPM | UNATTEND_NO_ONLINE_ACCOUNT | UNATTEND_OFFLINE_INTERNAL_DRIVES) +#define UNATTEND_DEFAULT_SELECTION_MASK (UNATTEND_SECUREBOOT_TPM_MINRAM | UNATTEND_NO_ONLINE_ACCOUNT | UNATTEND_OFFLINE_INTERNAL_DRIVES) /* * Globals diff --git a/src/rufus.rc b/src/rufus.rc index 2a49c48e..0f5c0577 100644 --- a/src/rufus.rc +++ b/src/rufus.rc @@ -33,7 +33,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL IDD_DIALOG DIALOGEX 12, 12, 232, 326 STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU EXSTYLE WS_EX_ACCEPTFILES -CAPTION "Rufus 3.20.1920" +CAPTION "Rufus 3.20.1921" FONT 9, "Segoe UI Symbol", 400, 0, 0x0 BEGIN LTEXT "Drive Properties",IDS_DRIVE_PROPERTIES_TXT,8,6,53,12,NOT WS_GROUP @@ -395,8 +395,8 @@ END // VS_VERSION_INFO VERSIONINFO - FILEVERSION 3,20,1920,0 - PRODUCTVERSION 3,20,1920,0 + FILEVERSION 3,20,1921,0 + PRODUCTVERSION 3,20,1921,0 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -414,13 +414,13 @@ BEGIN VALUE "Comments", "https://rufus.ie" VALUE "CompanyName", "Akeo Consulting" VALUE "FileDescription", "Rufus" - VALUE "FileVersion", "3.20.1920" + VALUE "FileVersion", "3.20.1921" VALUE "InternalName", "Rufus" VALUE "LegalCopyright", "© 2011-2022 Pete Batard (GPL v3)" VALUE "LegalTrademarks", "https://www.gnu.org/licenses/gpl-3.0.html" VALUE "OriginalFilename", "rufus-3.20.exe" VALUE "ProductName", "Rufus" - VALUE "ProductVersion", "3.20.1920" + VALUE "ProductVersion", "3.20.1921" END END BLOCK "VarFileInfo"