mirror of
https://github.com/pbatard/rufus.git
synced 2025-05-19 09:25:12 -04:00
[misc] improve the reporting of ISO props
This commit is contained in:
parent
64828934e0
commit
3a266d92a7
2 changed files with 21 additions and 29 deletions
40
src/rufus.c
40
src/rufus.c
|
@ -946,48 +946,40 @@ static void CALLBACK BlockingTimer(HWND hWnd, UINT uMsg, UINT_PTR idEvent, DWORD
|
||||||
}
|
}
|
||||||
|
|
||||||
// Report the features of the selected ISO images
|
// Report the features of the selected ISO images
|
||||||
static const char* YesNo(BOOL b) {
|
#define PRINT_ISO_PROP(b, ...) do {if (b) uprintf(__VA_ARGS__);} while(0)
|
||||||
return (b) ? "Yes" : "No";
|
|
||||||
}
|
|
||||||
static void DisplayISOProps(void)
|
static void DisplayISOProps(void)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
char isolinux_str[16] = "No";
|
|
||||||
|
|
||||||
if (HAS_SYSLINUX(img_report)) {
|
|
||||||
safe_sprintf(isolinux_str, sizeof(isolinux_str), "Yes (%s)", img_report.sl_version_str);
|
|
||||||
}
|
|
||||||
|
|
||||||
// TODO: Only report features that are present
|
|
||||||
uprintf("ISO label: '%s'", img_report.label);
|
uprintf("ISO label: '%s'", img_report.label);
|
||||||
uprintf(" Size: %" PRIu64 " bytes", img_report.projected_size);
|
uprintf(" Size: %" PRIu64 " bytes", img_report.projected_size);
|
||||||
uprintf(" Has a >64 chars filename: %s", YesNo(img_report.has_long_filename));
|
PRINT_ISO_PROP(img_report.has_4GB_file, " Has a >4GB file");
|
||||||
uprintf(" Has Symlinks: %s", YesNo(img_report.has_symlinks));
|
PRINT_ISO_PROP(img_report.has_long_filename, " Has a >64 chars filename");
|
||||||
uprintf(" Has a >4GB file: %s", YesNo(img_report.has_4GB_file));
|
PRINT_ISO_PROP(HAS_SYSLINUX(img_report), " Uses: Syslinux/Isolinux v%s", img_report.sl_version_str);
|
||||||
uprintf(" Uses Bootmgr: %s", YesNo(img_report.has_bootmgr));
|
|
||||||
uprintf(" Uses EFI: %s%s", YesNo(img_report.has_efi), IS_WIN7_EFI(img_report) ? " (win7_x64)" : "");
|
|
||||||
uprintf(" Uses Grub 2: %s", YesNo(img_report.has_grub2));
|
|
||||||
uprintf(" Uses Grub4DOS: %s", YesNo(img_report.has_grub4dos));
|
|
||||||
uprintf(" Uses isolinux: %s", isolinux_str);
|
|
||||||
if (HAS_SYSLINUX(img_report) && (SL_MAJOR(img_report.sl_version) < 5)) {
|
if (HAS_SYSLINUX(img_report) && (SL_MAJOR(img_report.sl_version) < 5)) {
|
||||||
for (i = 0; i<NB_OLD_C32; i++) {
|
for (i = 0; i<NB_OLD_C32; i++) {
|
||||||
uprintf(" With an old %s: %s\n", old_c32_name[i], img_report.has_old_c32[i] ? "Yes" : "No");
|
PRINT_ISO_PROP(img_report.has_old_c32[i], " With an old %s", old_c32_name[i]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
uprintf(" Uses KolibriOS: %s", YesNo(img_report.has_kolibrios));
|
PRINT_ISO_PROP(img_report.has_kolibrios, " Uses: KolibriOS");
|
||||||
uprintf(" Uses ReactOS: %s", YesNo(IS_REACTOS(img_report)));
|
PRINT_ISO_PROP(IS_REACTOS(img_report), " Uses: ReactOS");
|
||||||
uprintf(" Uses WinPE: %s%s", YesNo(IS_WINPE(img_report.winpe)), (img_report.uses_minint) ? " (with /minint)" : "");
|
PRINT_ISO_PROP(img_report.has_grub4dos, " Uses: Grub4DOS");
|
||||||
|
PRINT_ISO_PROP(img_report.has_grub2, " Uses: GRUB2");
|
||||||
|
PRINT_ISO_PROP(img_report.has_efi, " Uses: EFI %s", IS_WIN7_EFI(img_report) ? "(win7_x64)" : "");
|
||||||
|
PRINT_ISO_PROP(img_report.has_bootmgr, " Uses: Bootmgr");
|
||||||
|
PRINT_ISO_PROP(IS_WINPE(img_report.winpe), " Uses: WinPE %s", (img_report.uses_minint) ? "(with /minint)" : "");
|
||||||
if (HAS_INSTALL_WIM(img_report)) {
|
if (HAS_INSTALL_WIM(img_report)) {
|
||||||
uprintf(" Uses Install.wim: Yes (version %d.%d.%d)", (img_report.install_wim_version >> 24) & 0xff,
|
uprintf(" Uses: Install.wim (version %d.%d.%d)", (img_report.install_wim_version >> 24) & 0xff,
|
||||||
(img_report.install_wim_version >> 16) & 0xff, (img_report.install_wim_version >> 8) & 0xff);
|
(img_report.install_wim_version >> 16) & 0xff, (img_report.install_wim_version >> 8) & 0xff);
|
||||||
// Microsoft somehow managed to make their ESD WIMs incompatible with their own APIs
|
// Microsoft somehow managed to make their ESD WIMs incompatible with their own APIs
|
||||||
// (yes, EVEN the Windows 10 APIs), so we must filter them out...
|
// (yes, EVEN the Windows 10 APIs), so we must filter them out...
|
||||||
if (img_report.install_wim_version >= MAX_WIM_VERSION)
|
if (img_report.install_wim_version >= MAX_WIM_VERSION)
|
||||||
uprintf(" Note: This WIM version is NOT compatible with Windows To Go");
|
uprintf(" Note: This WIM version is NOT compatible with Windows To Go");
|
||||||
}
|
}
|
||||||
|
PRINT_ISO_PROP(img_report.has_symlinks, " Note: This ISO uses symbolic links, which will not be replicated due to file system limitations.");
|
||||||
|
PRINT_ISO_PROP(img_report.has_symlinks, " Because of this, some features from this image may not work...");
|
||||||
|
|
||||||
// We don't support ToGo on Windows 7 or earlier, for lack of ISO mount capabilities
|
// We don't support ToGo on Windows 7 or earlier, for lack of native ISO mounting capabilities
|
||||||
// TODO: add install.wim extraction workaround for Windows 7
|
|
||||||
if (nWindowsVersion >= WINDOWS_8)
|
if (nWindowsVersion >= WINDOWS_8)
|
||||||
if ( ((!togo_mode) && (HAS_TOGO(img_report))) || ((togo_mode) && (!HAS_TOGO(img_report))) )
|
if ( ((!togo_mode) && (HAS_TOGO(img_report))) || ((togo_mode) && (!HAS_TOGO(img_report))) )
|
||||||
ToggleToGo();
|
ToggleToGo();
|
||||||
|
|
10
src/rufus.rc
10
src/rufus.rc
|
@ -33,7 +33,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
|
||||||
IDD_DIALOG DIALOGEX 12, 12, 242, 376
|
IDD_DIALOG DIALOGEX 12, 12, 242, 376
|
||||||
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 2.8.862"
|
CAPTION "Rufus 2.8.863"
|
||||||
FONT 8, "Segoe UI Symbol", 400, 0, 0x0
|
FONT 8, "Segoe UI Symbol", 400, 0, 0x0
|
||||||
BEGIN
|
BEGIN
|
||||||
LTEXT "Device",IDS_DEVICE_TXT,9,6,200,8
|
LTEXT "Device",IDS_DEVICE_TXT,9,6,200,8
|
||||||
|
@ -320,8 +320,8 @@ END
|
||||||
//
|
//
|
||||||
|
|
||||||
VS_VERSION_INFO VERSIONINFO
|
VS_VERSION_INFO VERSIONINFO
|
||||||
FILEVERSION 2,8,862,0
|
FILEVERSION 2,8,863,0
|
||||||
PRODUCTVERSION 2,8,862,0
|
PRODUCTVERSION 2,8,863,0
|
||||||
FILEFLAGSMASK 0x3fL
|
FILEFLAGSMASK 0x3fL
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
FILEFLAGS 0x1L
|
FILEFLAGS 0x1L
|
||||||
|
@ -338,13 +338,13 @@ BEGIN
|
||||||
BEGIN
|
BEGIN
|
||||||
VALUE "CompanyName", "Akeo Consulting (http://akeo.ie)"
|
VALUE "CompanyName", "Akeo Consulting (http://akeo.ie)"
|
||||||
VALUE "FileDescription", "Rufus"
|
VALUE "FileDescription", "Rufus"
|
||||||
VALUE "FileVersion", "2.8.862"
|
VALUE "FileVersion", "2.8.863"
|
||||||
VALUE "InternalName", "Rufus"
|
VALUE "InternalName", "Rufus"
|
||||||
VALUE "LegalCopyright", "© 2011-2016 Pete Batard (GPL v3)"
|
VALUE "LegalCopyright", "© 2011-2016 Pete Batard (GPL v3)"
|
||||||
VALUE "LegalTrademarks", "http://www.gnu.org/copyleft/gpl.html"
|
VALUE "LegalTrademarks", "http://www.gnu.org/copyleft/gpl.html"
|
||||||
VALUE "OriginalFilename", "rufus.exe"
|
VALUE "OriginalFilename", "rufus.exe"
|
||||||
VALUE "ProductName", "Rufus"
|
VALUE "ProductName", "Rufus"
|
||||||
VALUE "ProductVersion", "2.8.862"
|
VALUE "ProductVersion", "2.8.863"
|
||||||
END
|
END
|
||||||
END
|
END
|
||||||
BLOCK "VarFileInfo"
|
BLOCK "VarFileInfo"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue