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

496 commits

Author SHA1 Message Date
Pete Batard
6109d91c38 [net] add automated update support for ARM/ARM64 2018-10-22 17:42:40 +01:00
Pete Batard
e587997f4e [ui] fix an issue where target system could appear blank for UEFI:NTFS
* Also fix a regression introduced in 790b188b3d
2018-10-08 19:00:24 +02:00
Pete Batard
19d9bdbed0 [ui] fix missing description of some buttons for screen readers
* Closes #1215
2018-10-05 10:55:00 +02:00
Pete Batard
790b188b3d [ui] fix disabling of Quick Format checkbox
* Closes #1211
* Also fix MBR analysis report displayed each time the user changes boot selection
2018-10-03 19:14:40 +02:00
Pete Batard
97315a238d [togo] fix bcdboot invocation for ISOs that aren't dual BIOS and UEFI
* Closes #1111
2018-09-14 14:10:40 +01:00
Pete Batard
2d99601a5f [core] fix a regression when scanning uncompressed bootable DD images
* Closes #1206
2018-09-13 11:49:51 +01:00
Pete Batard
e52a5206ba [ui] fix FAT32 sometimes becoming available for ISOs with >4GB files
* FAT32 would become available and selected as default FS when
  selecting a Windows ISO with a >4GB file and then clicking
  "Show advanced drive properties".
2018-09-07 14:11:25 +01:00
Pete Batard
619dd9862b [misc] use GetWindowLongPtr/SetWindowLongPtr everywhere
* Also remove WS_EX_RIGHT style from IDC_PERSISTENCE_SIZE since we apply it manually
2018-08-20 09:46:23 +01:00
Pete Batard
c832814af0 [ui] small fixes for RTL languages 2018-08-18 17:38:23 +01:00
Pete Batard
e8745339e4 [ui] fix multiple persistence slider issues
* Range not being set when plugging a drive
* Set position to zero when no drive is selected
* Make sure the restored position can not be greater than the max
2018-08-14 23:05:52 +01:00
Pete Batard
71578459d7 [loc] fix spaces before full stops
* Also: "Asserts, it's not just for debug any more!"
2018-07-31 20:47:24 +01:00
Pete Batard
1612064c66 [loc] finalize new translations for 3.2
* Also fix a MinGW warning
2018-07-18 16:59:35 +01:00
Pete Batard
1004a6e066 [ui] update persistence size controls
* Also refactor ToggleImageOptions()
2018-07-18 12:22:37 +01:00
Pete Batard
f9275e4780 [loc] update the processing of version numbers
* Now only use major.minor for version references
* Drop the use of LOC_FRAMEWORK_VERSION. We'll use custom handling if we ever need a framework change.
* Also update/fix some of the UI elements for persistent partition
* Also reposition the language selection menu when we don't have a large number of them
2018-07-15 01:05:05 +01:00
René van der Zee
77bf5c8a49 [core] add alternate cheat mode for fast zeroing
* Ctrl-Alt-Z can now be used to zero a drive, while skipping blocks that are detected empty
* Depending on your hardware, as well as the existing drive content, this strategy can greatly
  speed up zeroing operations, especially if the flash memory's read speed is much higher than
  its write speed.
* Closes #1174
2018-07-06 13:29:20 +01:00
Pete Batard
a394b9731a [ui] add positioning, resizing & filling of the persistence controls
* Also add a test ISO to display these controls
* The intent is to use the next round of translation to get these new UI elements localized,
  as any translation work takes _months_, and it is a precondition to start working on #691.
* Also fix new issues with image options when switching language
2018-07-06 11:23:57 +01:00
Pete Batard
05f8400451 [misc] reorganize UI function calls into their own source
* Also fix ARM/ARM64 broken compilation due to missing __popcnt()
2018-07-06 05:46:36 +01:00
Pete Batard
a34cb1194e [ui] initial work for the display of a persistence option
* This doesn't mean we'll get persistence support any time soon, but any UI work
  on this needs to be carried out *MONTHS* in advance because of the translators.
2018-07-06 00:40:52 +01:00
Pete Batard
5602494690 [ui] fix application exit when cancelling the ISO scan 2018-07-04 22:50:26 +01:00
Pete Batard
c12640b547 [ui] fix progress not being displayed for syslinux/grub downloads
* Also make download of .sig files a bit less verbose
2018-07-03 22:54:06 +01:00
Pete Batard
7c142fadbc [net] improve handling of invalid signatures
* Also make bPromptOnError an actual parameter to the download function calls
* Also prefer the use of assert() to custom assertion messages
2018-06-30 22:45:15 +01:00
Pete Batard
fdfc9ff82d [pki] add RSA-2048 signature validation for all server downloads
* Closes #1172
* Also fix a MinGW warning in badblocks.c
2018-06-29 18:19:05 +01:00
Pete Batard
2d262df8f3 [bb] bad blocks check improvement
* Use a default block size of 128 KB (can speed up read operations)
* Reorganise patterns to suit different types of NAND cells (SLC, MLC and TLC)
* Only run fake drive test on first pass
* Also update rufus-next to 3.2
2018-06-28 16:25:13 +01:00
Pete Batard
9afd1d05dd [misc] silence an unwarranted coverity warning 2018-06-15 16:50:37 +01:00
Pete Batard
3ba7c9eab0 [grub] update grub4dos to latest and update db entry for grub 2.03
* Also improve PowerShell invocation for Controlled Folder Access detection
2018-06-12 16:01:14 +01:00
Pete Batard
e36fdb6736 [core] add detection and warning about Controller Access Folder 2018-06-11 14:02:23 +01:00
Pete Batard
d6e6f46029 [ui] fix notification dialog messages being truncated
* We now auto resize the height of the Notification dialog according to the
  number of lines of the message.
* Also harmonize local RECT variable names according to what we do elsewhere.
2018-06-08 13:02:39 +01:00
Pete Batard
60e21ed910 [ui] fix an issue where 2 dialogs could exist onscreen when switching languages 2018-06-06 23:15:41 +01:00
Pete Batard
fca4e2d59b [ui] fix Windows To Go option unconditional display when switching languages
* Also update version to rufus-next
2018-06-05 15:47:48 +01:00
Pete Batard
e1d864f755 [misc] work around Microsoft's broken SetDllDirectory()
* *THIS* is what you need to do to replace Microsoft's broken SetDllDirectory("")
  implementation and mitigate DLL sideloading from local directories.
* Also fix some comment typos
2018-06-05 13:02:28 +01:00
Pete Batard
98ada80b1b v3.0 (build 1303)
* Fix a 64-bit compilation warning
* Fix appx generation
2018-05-29 11:19:21 +01:00
Pete Batard
d1d6e0f8b4 [ui] improve centering of the toolbar icons
* Microsoft, how I loathe thee!!!
2018-05-22 17:14:31 +01:00
Pete Batard
f48dec11c3 [ui] fix display of RTL text in progress bar
* Another case of if you really want RTL, you have to tell Windows that you don't want it...
* Also fix the URL for Super Grub disk in .loc file
2018-05-21 10:51:12 +01:00
Pete Batard
34ee2f6382 [ui] Move the save and hash tooltips to the toolbar parent
* Also fix a .loc typo
2018-05-17 15:05:09 +01:00
Pete Batard
0d0ad389ce [ui] avoid intempestive log tooltip display and fix partition type preservation
* Because of Windows' poor handling of toolbar buttons' tooltips, an unwanted
  tooltip could be displayed onscreen after closing the log.
* Also fix an issue when Rufus would reset the partition type to GPT after a
  user created an MBR flash drive (e.g. after creating a Windows bootable USB).
2018-05-16 12:56:31 +01:00
Pete Batard
9815a18009 [ui] fix tabbing order for the new UI design
* Accessibility *IS* a thankless job...
2018-05-11 17:35:48 +01:00
Pete Batard
40b0d9e0d2 [ui] minor cosmetic improvements 2018-05-11 09:29:14 +01:00
Pete Batard
db6a5bb749 [loc] fix tooltip justification for RTL languages
* Left alignment was used instead of right
* Also improve device tooltip display
2018-05-10 12:07:21 +01:00
Pete Batard
070e28aa5a [ui] fix display of icons for RTL languages
* Ensure that the 'Save', 'Hash' and 'World' icons are not mirrored for RTL
* Also call DestroyIcon() where required and clean up code
2018-05-10 10:51:31 +01:00
Pete Batard
13e7b0226d [ui] improve log window positioning
* Now seriously what the $%^& is wrong with Microsoft?!?
2018-05-09 15:55:30 +01:00
Pete Batard
cdacc6f342 [ui] fix whole screen refresh and progress bar issues
* Whole screen was being refreshed when calling InvalidateRect() in ResizeMoveCtrl()
* Progress bar bounding rectangle could be erased at 0.0%
* No progress was displayed when writing ISOHybrid images in DD mode
* Also fix an issue when write error would not display the error string
2018-05-08 20:28:23 +01:00
Pete Batard
8453c8c44f [ui] try to reselect the last file system explicitly set
* Also remove an duplicate internal call to IDC_FILE_SYSTEM
* Also fix the hash button mention in the Japanese translation
2018-05-06 22:31:42 +01:00
Pete Batard
303978de64 [ui] fix vertical alignment of status bar messages
* Also fix ugly icon scaling at 125%
2018-05-01 23:11:19 +01:00
Pete Batard
de7dde05c4 [ui] use fluent 2-colour scheme PNG icons
* Also switch save and hash to toolbar buttons
* Also fix centering of icons on toolbars
2018-05-01 18:10:48 +01:00
Pete Batard
935c6fff23 [ui] fix a typo and try to preserve user selected partition type
* partition type and target type were mixed up on pressing 'Start'
2018-04-27 16:31:03 +01:00
Pete Batard
28cfa5a94e [ui] preserve Windows To Go dropdown when switching language
* Also fix incorrect version number from German translation
2018-04-23 17:41:05 +01:00
Pete Batard
7221dee4d1 [core] disable file indexing by default
* File indexing is too much of an annoyance on removable drives anyway
  and this should help with perf and access issues
* Alt-Q cheat mode is now changed to re-enable file indexing
* Also fix a rogue 'else' in the code
2018-04-19 16:02:07 +01:00
Pete Batard
5c57703c70 [ui] add marquee progress bar mode
* Also fix x86_64 warnings
2018-04-19 12:25:11 +01:00
Pete Batard
42c158917c [ui] fix quick format not always being disabled for Large FAT32
* Also remove no longer needed 'progress_in_use' variable
2018-04-17 09:22:27 +02:00
Pete Batard
7fef3c6434 [ui] use our own custom bar with text
* Needed because native Windows produces obnoxious tearing on redrawing.
* Also rename global partition scheme variable back to 'pt'
* Also fix major and minor version numbers in the .rc
2018-04-16 17:05:23 +02:00
Pete Batard
65ac40e750 [ui] preserve Windows To Go setting when changing boot selection 2018-04-13 12:17:09 +02:00
Pete Batard
efe7ccb43c [ui] fix an issue where the advanced toolbars may not display
* Super-strange behaviour, that happens on Windows 7, at low zoom
  factors, only when compiled with MSVC (MinGW is fine) and only
  when the advanced options are set to be displayed on startup...
* Looks like TB_GETIDEALSIZE is screwy - Thanks a lot Microsoft!
2018-03-30 15:52:44 +01:00
Pete Batard
fbe47c1abd [loc] finalize translation changes for 3.0
* Also add truncated ISO test image to our repo
* Also don't trigger portable version detection for ALPHA
2018-03-27 13:23:11 +01:00
Pete Batard
1dbbe69a4b [ui] improve partition scheme default selection
* Also rename our variable to PartitionStyle/ps for clarity
2018-03-26 19:06:55 +01:00
Pete Batard
a44518355f [ui] UI redesign
* Better guide the user through the flow of operations
* Also follow a concept design by Fahad Al-Riyami
* Closes #117
2018-03-22 23:14:21 +00:00
Pete Batard
903ac993f2 [misc] remove no longer needed XP workarounds 2017-11-13 14:30:25 +00:00
Pete Batard
9c8cb59253 v2.18 (build 1213) 2017-11-07 13:24:17 +00:00
Pete Batard
6a45a678b3 [ui] ensure that the same drive is re-selected on device refresh 2017-10-23 17:09:18 +01:00
Pete Batard
8286a0f63a [core] add a cheat mode to reset the current USB device (cycle port)
* Will not work on Vista, Windows 7 or Server 2008
* Also update Windows version info
2017-09-15 13:56:01 +01:00
Pete Batard
44c9cb0b82 [iso] add support for ISO9660 multiextent files
* Closes #1007
2017-09-14 17:36:54 +01:00
Pete Batard
e3fbfb30d3 [pki] add country code validation on signature check
* Also validate against the CN rather than the simple name, and require an exact match
2017-09-11 12:13:47 +01:00
Pete Batard
c22b378f9a [misc] display image and disk size in the log
* Also fix 2 Coverity warnings
* Also remove unneeded LFs in drive.c
2017-09-08 15:38:30 +01:00
Pete Batard
a73e695ba4 [pki] timestamp validation improvements
* Add timestamp processing for nested signature and check for anomalous differences
* Also prevent attack scenarios that may attempt to leverage multiple nested signatures or countersigners
* Simplify code by using CryptDecodeObjectEx/WinVerifyTrustEx and improve timestamp reporting
2017-09-03 13:54:07 +01:00
Pete Batard
36cadcfcca [pki] improve error handling
* FormatMessage() does not handle PKI errors
* Also fix an issue with non-official version detection when the language is not English
2017-08-27 15:07:35 +01:00
Pete Batard
c82842ce2a [core] add Super Floppy Disk support 2017-08-12 15:12:00 +01:00
Pete Batard
90dc847e24 [misc] add static_strcat & static_strcpy and use static_ calls wherever possible
* Also set Rufus next to 2.17 and fix a warning
2017-08-10 19:43:52 +01:00
Pete Batard
5d371088cb [iso] add EFI boot support from 'efi.img' FAT images
* Required to support Debian Live 9.1 in ISO mode
* Note that this only works if the efi.img boot files do not require
  additional content besides the one extracted from the ISO.
2017-08-09 16:27:11 +01:00
Pete Batard
d620d8848d [loc] fix RTL display of ISO truncation notification
* Also don't use MessageBoxU where unneeded
2017-07-29 17:34:11 +01:00
Pete Batard
bb00e220ac [ui] more info field fixes
* Prevent text selection and try to force a redraw, to ensure the text is centered on update
* Also update the libcdio 'AL' workaround
2017-07-26 11:47:02 +01:00
Pete Batard
0a3c04379b [misc] fix Coverity warnings 2017-07-25 12:19:50 +01:00
Pete Batard
93c2d7851e [ui] fix info box when downloading Syslinux/GRUB files
* Don't duplicate the PrintInfo() from DownloadFile()
* Make sure caret is disabled and displayed text will not appear selected
* Also update MSG_085 and remove unneeded MSG_240
2017-07-24 17:20:17 +01:00
Pete Batard
369a392af0 [process] improve the search for conflicting processes check
* Add a WaitForSingleObjectWithMessages() call so that we can process Windows messages
  while waiting on events (prevents lockup while issuing log messages)
* Limit the total duration of CheckDriveAccess() to 2 seconds
* Allow for user cancellation
* Also update code to use the Edit_####() predefined macros for Edit controls instead of EM_### messages
2017-07-24 11:36:06 +01:00
Pete Batard
d5babb5e72 [ui] disable controls prior to format checks
* Also send Unicode strings to the debug output facility, since Windows 10
  *FINALLY* added Unicode processing support there...
2017-07-22 15:17:24 +01:00
Pete Batard
4617ba786d [process] add a timeout for the process search
* The process search appears to be blocking on some platform, and we
  also don't want users to have to wait too long on format startup
* Also update the update check for Windows XP SSL errors
2017-07-20 17:43:38 +01:00
Pete Batard
77e40d1373 [syslinux] remove unwanted 'isolinux.tmp' on error
* Also use a global 'temp_dir' variable and fix a small issue with Swedish translation
2017-07-18 12:57:22 +01:00
Pete Batard
b4a2c06a2e [ui] ask user if they want proceed when conflicting processes are found
* Rufus now checks for processes with handles opened on the drives/volumes before
  starting the format operation and asks the user if they want to continue.
* This mimics Windows' behaviour when formatting drives, and actually uses the
  same message as the one from shell32.dll.mui.
* Closes #773
2017-07-16 22:42:19 +01:00
Pete Batard
a528bb3d83 [ui] report process(es) that are preventing access on error
* Also revert loc file changes that were introduced in f53b22a077
2017-07-11 17:50:38 +01:00
Pete Batard
c00557900b [misc] drop WDK compilation support 2017-07-10 13:10:23 +01:00
Pete Batard
92d046e663 [ui] produce a sound and flash taskbar icon on success/error
* Closes #973
2017-07-04 14:51:25 +01:00
Pete Batard
150be52479 [iso] notify if the file size on disk is smaller than expected ISO size
* Closes #963
* Also fix a potential issue with Notification()
2017-06-24 17:23:06 +01:00
Pete Batard
54ee68f6fc [pki] have GetSignatureName() use the current binary on NULL parameter 2017-06-15 17:25:13 +01:00
Pete Batard
ea940114ee [process] enable SE_DEBUG_PRIVILEGE so we can enumerate Windows Services
* Closes #948
* Also set COINIT_DISABLE_OLE1DDE on init as advised by Microsoft
2017-05-02 14:07:41 +01:00
Pete Batard
3b4b742772 [wintogo] add an error popup if we can't select the version 2017-05-02 00:38:40 +01:00
Pete Batard
30137de7cb [iso] improve handling of image size
* Don't use the projected size where the actual image size should be used
* Also fix an issue with the projected size computation
2017-05-01 16:22:34 +01:00
Pete Batard
d1927ac1ef [core] handle search improvements
* Fix memory leaks due to not releasing the heap
* Also speed up lookups by not reopening the same process twice in a row
* Also make the usb_debug variable global so we can use uuprintf everywhere
2017-04-29 17:14:16 +01:00
Pete Batard
d5f6ddb653 [core] list potentially blocking processes on disk access error
* Using functionality from Process Hacker:
  https://github.com/processhacker2/processhacker2/
* Part of the #773 enhancement
* Also fix minor MinGW and WDK warnings
2017-04-27 23:06:42 +01:00
Pete Batard
55b7d5c2da [misc] code cleanup
* Also fix WDK compilation issues
2017-04-25 20:25:50 +01:00
Pete Batard
afec69c428 [ui] improve logging data
* Display the selected locate as well as LGP info in the log
* Also fix some potential Coverity warnings
2017-04-25 14:32:19 +01:00
Pete Batard
aec2736245 [togo] improve Windows To Go support for Windows 10 Creators Update
* Enable the use of GPT on REMOVABLE drives, if the host is Windows 10 CU
* Don't display the message about REMOVABLE boot, if the target is Windows 10 CU
2017-04-19 11:30:24 +01:00
Pete Batard
e2481efcd9 [pki] application security improvements
* Also clean up registry variables and add IsRegistryNode() call
2017-04-12 20:40:43 +01:00
Pete Batard
be1bdb7c85 [misc] miscellaneous cleanup
* Also add CreateWindowExU() method
* Also add the 'DisableFileIndexing' to the ini template
2017-04-04 17:26:45 +01:00
Pete Batard
abce1a2aa0 [ui] prefer GPT if the user switched to it before ISO selection
* This should help with the myriad of people not noticing that
  this setting was reset after selecting an ISO.
2017-03-30 12:07:49 +01:00
Pete Batard
21ce17302d [misc] fix coverity and VS analysis warnings 2017-03-08 21:22:24 +01:00
Pete Batard
2f81e4f177 [core] avoid the use of FILE_SHARE_WRITE
* Not having FILE_SHARE_WRITE on a disk or volume handle helps
  prevent spurious accesses from the OS or other apps while we
  are repartitioning/refomatting.
2017-02-16 14:13:30 +00:00
Pete Batard
c72aa7be0a [core] don't clean up partition data before writing a disk image
* This workaround seems to be needed for the upcoming Windows 10 rs2_release (see #883)
* Also some minor fixes
* Closes #883
2017-02-14 12:44:25 +00:00
Pete Batard
4373f0c452 [ui] fix notification sound when closing using X
* Closes #893
2017-01-30 17:52:37 +00:00
Pete Batard
8aeaa4d645 [grub] add fallback to same major version 2017-01-06 16:15:31 +00:00
Pete Batard
d7e977e1f1 [core] enable FAT32 for Windows install when dual UEFI+BIOS is enabled 2017-01-03 16:56:30 +00:00
Pete Batard
5b544c6a4a [misc] update copyright year 2017-01-01 15:30:03 +00:00
Pete Batard
d783573178 [syslinux] enable NTFS selection for Syslinux 6.x or later
* Tested with latest Arch, Debian and Ubuntu
2016-12-15 16:28:00 +00:00