1
1
Fork 0
mirror of https://github.com/pbatard/rufus.git synced 2024-08-14 23:57:05 +00:00

Compare commits

...

6 commits

Author SHA1 Message Date
Mohmed abdel-fattah
5e8b8f7349
Merge e336bfdc44 into 10d33c6658 2024-07-08 16:21:57 +01:00
Pete Batard
10d33c6658
[wue] add TimeZone to regional options replication
* Closes #2499.
2024-07-08 13:56:15 +01:00
Pete Batard
83b1e73062
[dev] add exception for Samsung uSD Card devices
* Closes #2506.
2024-07-08 13:22:37 +01:00
Pete Batard
6d29120b38
[wue] add 'Local' to the list of disallowed local account names
* Closes #2493.
* Also add 'KRBTGT' as it is mentioned at https://learn.microsoft.com/en-us/windows-server/identity/ad-ds/manage/understand-default-user-accounts#default-local-accounts-in-active-directory
  along with 'Administrator' and 'Guest' and is probably disallowed too.
2024-07-08 13:13:21 +01:00
wallrik
7c6dbdc1ce
[msic] update Windows To Go docs link
* Old link is still fine, but we might as well point to the Windows 10 version.
* Closes #2511.
2024-07-08 11:01:47 +01:00
Mark Peek
6f764ab637
[dev] allow the use of FreeBSD bhyve virtual disks
* Closes #2504.
2024-07-08 10:59:48 +01:00
4 changed files with 22 additions and 13 deletions

View file

@ -287,6 +287,7 @@ static __inline BOOL IsVHD(const char* buffer)
"Arsenal_________Virtual_", "Arsenal_________Virtual_",
"KernSafeVirtual_________", "KernSafeVirtual_________",
"Msft____Virtual_Disk____", "Msft____Virtual_Disk____",
"BHYVE__________SATA_DISK",
"VMware__VMware_Virtual_S" // Enabled through a cheat mode, as this lists primary disks on VMWare instances "VMware__VMware_Virtual_S" // Enabled through a cheat mode, as this lists primary disks on VMWare instances
}; };
@ -415,9 +416,9 @@ BOOL GetOpticalMedia(IMG_SAVE* img_save)
/* For debugging user reports of HDDs vs UFDs */ /* For debugging user reports of HDDs vs UFDs */
//#define FORCED_DEVICE //#define FORCED_DEVICE
#ifdef FORCED_DEVICE #ifdef FORCED_DEVICE
#define FORCED_VID 0x23A9 #define FORCED_VID 0x04E8
#define FORCED_PID 0xEF18 #define FORCED_PID 0x61ED
#define FORCED_NAME "SCSI DISK USB Device" #define FORCED_NAME "Samsung uSD Card Reader USB Device"
#endif #endif
void ClearDrives(void) void ClearDrives(void)

View file

@ -91,6 +91,7 @@ static str_score_t str_adjust[] = {
{ "Gadget", -10 }, { "Gadget", -10 },
{ "Flash", -10 }, { "Flash", -10 },
{ "SD-CARD", -10 }, { "SD-CARD", -10 },
{ "uSD Card", -10 },
{ "HDD", +20 }, { "HDD", +20 },
{ "SATA", +20 }, { "SATA", +20 },
{ "SCSI", +20 }, { "SCSI", +20 },

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 4.6.2182" CAPTION "Rufus 4.6.2187"
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
@ -397,8 +397,8 @@ END
// //
VS_VERSION_INFO VERSIONINFO VS_VERSION_INFO VERSIONINFO
FILEVERSION 4,6,2182,0 FILEVERSION 4,6,2187,0
PRODUCTVERSION 4,6,2182,0 PRODUCTVERSION 4,6,2187,0
FILEFLAGSMASK 0x3fL FILEFLAGSMASK 0x3fL
#ifdef _DEBUG #ifdef _DEBUG
FILEFLAGS 0x1L FILEFLAGS 0x1L
@ -416,13 +416,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", "4.6.2182" VALUE "FileVersion", "4.6.2187"
VALUE "InternalName", "Rufus" VALUE "InternalName", "Rufus"
VALUE "LegalCopyright", "<22> 2011-2024 Pete Batard (GPL v3)" VALUE "LegalCopyright", "<22> 2011-2024 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-4.6.exe" VALUE "OriginalFilename", "rufus-4.6.exe"
VALUE "ProductName", "Rufus" VALUE "ProductName", "Rufus"
VALUE "ProductVersion", "4.6.2182" VALUE "ProductVersion", "4.6.2187"
END END
END END
BLOCK "VarFileInfo" BLOCK "VarFileInfo"

View file

@ -31,6 +31,7 @@
#include "resource.h" #include "resource.h"
#include "registry.h" #include "registry.h"
#include "msapi_utf8.h" #include "msapi_utf8.h"
#include "timezoneapi.h"
#include "localization.h" #include "localization.h"
/* Memory leaks detection - define _CRTDBG_MAP_ALLOC as preprocessor macro */ /* Memory leaks detection - define _CRTDBG_MAP_ALLOC as preprocessor macro */
@ -60,10 +61,12 @@ extern StrArray modified_files;
/// <returns>The path of a newly created answer file on success or NULL on error.</returns> /// <returns>The path of a newly created answer file on success or NULL on error.</returns>
char* CreateUnattendXml(int arch, int flags) char* CreateUnattendXml(int arch, int flags)
{ {
const static char* xml_arch_names[5] = { "x86", "amd64", "arm", "arm64" };
const static char* unallowed_account_names[] = { "Administrator", "Guest", "KRBTGT", "Local" };
static char path[MAX_PATH]; static char path[MAX_PATH];
FILE* fd; FILE* fd;
TIME_ZONE_INFORMATION tz_info;
int i, order; int i, order;
const char* xml_arch_names[5] = { "x86", "amd64", "arm", "arm64" };
unattend_xml_flags = flags; unattend_xml_flags = flags;
if (arch < ARCH_X86_32 || arch > ARCH_ARM_64 || flags == 0) { if (arch < ARCH_X86_32 || arch > ARCH_ARM_64 || flags == 0) {
uprintf("Note: No Windows User Experience options selected"); uprintf("Note: No Windows User Experience options selected");
@ -150,10 +153,10 @@ char* CreateUnattendXml(int arch, int flags)
fprintf(fd, " </OOBE>\n"); fprintf(fd, " </OOBE>\n");
} }
if (flags & UNATTEND_SET_USER) { if (flags & UNATTEND_SET_USER) {
if ((unattend_username[0] == 0) || (stricmp(unattend_username, "Administrator") == 0) || for (i = 0; (i < ARRAYSIZE(unallowed_account_names)) && (stricmp(unattend_username, unallowed_account_names[i]) != 0); i++);
(stricmp(unattend_username, "Guest") == 0)) { if (i < ARRAYSIZE(unallowed_account_names)) {
uprintf("WARNING: '%s' is not allowed as local account name - Option ignored", unattend_username); uprintf("WARNING: '%s' is not allowed as local account name - Option ignored", unattend_username);
} else { } else if (unattend_username[0] != 0) {
uprintf("• Use '%s' for local account name", unattend_username); uprintf("• Use '%s' for local account name", unattend_username);
// If we create a local account in unattend.xml, then we can get Windows 11 // If we create a local account in unattend.xml, then we can get Windows 11
// 22H2 to skip MSA even if the network is connected during installation. // 22H2 to skip MSA even if the network is connected during installation.
@ -198,6 +201,10 @@ char* CreateUnattendXml(int arch, int flags)
ReadRegistryKeyStr(REGKEY_HKCU, "Keyboard Layout\\Preload\\1")); ReadRegistryKeyStr(REGKEY_HKCU, "Keyboard Layout\\Preload\\1"));
fprintf(fd, " <SystemLocale>%s</SystemLocale>\n", ToLocaleName(GetSystemDefaultLCID())); fprintf(fd, " <SystemLocale>%s</SystemLocale>\n", ToLocaleName(GetSystemDefaultLCID()));
fprintf(fd, " <UserLocale>%s</UserLocale>\n", ToLocaleName(GetUserDefaultLCID())); fprintf(fd, " <UserLocale>%s</UserLocale>\n", ToLocaleName(GetUserDefaultLCID()));
if (GetTimeZoneInformation(&tz_info) == TIME_ZONE_ID_INVALID)
uprintf("WARNING: Could not retrieve current timezone: %s", WindowsErrorString());
else
fprintf(fd, " <TimeZone>%S</TimeZone>\n", tz_info.StandardName);
fprintf(fd, " <UILanguage>%s</UILanguage>\n", ToLocaleName(GetUserDefaultUILanguage())); fprintf(fd, " <UILanguage>%s</UILanguage>\n", ToLocaleName(GetUserDefaultUILanguage()));
fprintf(fd, " <UILanguageFallback>%s</UILanguageFallback>\n", fprintf(fd, " <UILanguageFallback>%s</UILanguageFallback>\n",
// NB: Officially, this is a REG_MULTI_SZ string // NB: Officially, this is a REG_MULTI_SZ string
@ -631,7 +638,7 @@ out:
/// <summary> /// <summary>
/// Setup a Windows To Go drive according to the official Microsoft instructions detailed at: /// Setup a Windows To Go drive according to the official Microsoft instructions detailed at:
/// https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-8.1-and-8/jj721578(v=ws.11). /// https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/deployment/windows-to-go/deploy-windows-to-go
/// Note that as opposed to the technet guide above we use bcdedit rather than 'unattend.xml' /// Note that as opposed to the technet guide above we use bcdedit rather than 'unattend.xml'
/// to disable the recovery environment. /// to disable the recovery environment.
/// </summary> /// </summary>