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

213 commits

Author SHA1 Message Date
Pete Batard
89a7a3deb1 [core] add uncompressed DD image support
* Also fix an issue with hotplug due to WM_DEVICECHANGE being filtered out
* Also improve AnalyzeMBR() and prevent failure on WriteMBR
* Also fix a couple issues with ISO and Syslinux handling
* Also remove "smart" uncheck of disabled checkboxes - not worth it
2014-02-09 02:54:07 +00:00
Pete Batard
7d1a3d82cc [syslinux] improve handling of 4.x C32 files
* Download the files from files/syslinux-4.07 on the server
* Save local copy in rufus_files/syslinux-4.07
* Move menu.c32/vesamenu.c32 check to BootCheck()
2014-02-04 20:01:28 +00:00
Pete Batard
f424229e0f [misc] add NTFS compression support
* Only as a cheat mode (Alt-N)
* Also fixes inconsistent MBR partition numbering
* Also update a comment in vhd.c about callback progress (thanks to Erwan)
2014-01-31 02:51:28 +00:00
Pete Batard
2577337dec [misc] right-to-left and version handling improvements
* Improve right-to-left consistency and handling
* Drop 'v' from version indicators
* Also update version to 1.4.4
* Also fix French translation typos
2014-01-24 20:02:52 +00:00
Pete Batard
8ae158ba22 [loc] add support for right-to-left languages
* Closes #192
2014-01-24 02:46:06 +00:00
Pete Batard
3c2873bbdc [syslinux] fix missing syslinux.cfg creation
* Issue was introduced with 299506056a
* Also improve StrArray definition
2014-01-22 01:28:25 +00:00
Pete Batard
3ae7ec4af5 [core] detect, report and warn when multiple partitions are in use
* Closes #191
* Also fix various minor warnings
2014-01-21 23:09:30 +00:00
Pete Batard
299506056a [syslinux] fix support for recent Syslinux versions
* Detect Syslinux version from isolinux.bin (Closes #272)
* Download required Syslinux v5+ files where needed (Closes #165)
* Also fix an issue where using a Syslinux based ISO didn't switch to ISO mode
* Also alter DownloadFile and ExtractISOFile to return a size
2014-01-21 21:59:09 +00:00
Pete Batard
ec5ab918cf [core] add UASP support
* Closes #229
2014-01-07 21:21:45 +00:00
Pete Batard
573ea45640 [core] add support for bare ReactOS boot record installation
* A new "ReactOS" is now available under "Create a bootable disk" when running in advanced mode.
* Using this option will install the ReactOS bootblocks (MBR & FAT PBR) _only_.
  You can then copy freeldr.sys and freeldr.ini to make the drive bootable.
* Also move Rufus MBR installation to ms-sys, and remove mbr.bin resource.
* Also add Rufus MBR detection, remove duplicate records and display MBR type on drive detection
* Also move PBR and MBR analysis calls to drive.c and add a drive.h header
* Also make extraction of embedded loc file more robust
2014-01-05 01:39:41 +00:00
Pete Batard
e9e27d7034 [core] add ReactOS support
* Use Syslinux v4 and mboot.c32 to chainload setupldr.sys
* Closes #266
2014-01-02 23:21:30 +00:00
Pete Batard
0f02284164 [loc] fix crash when two Rufus applications are running
* Closes #261
* Also remove the need for a separate get_loc_data_file call to
  initialize the en-US messages
* Also fix a possible issue with setLGP
2013-12-28 16:48:02 +00:00
Pete Batard
83a9ec472c [core] fix slowdown when copying ISO files
* This slowdown was introduced in 897becd290 as the use of
  SetThreadUILanguage apparently incurs a massive performance drawback.
* Closes #259
* Also fix a possible issue where the blocking operation message could appear twice
* Also improve the French translation
2013-12-28 01:27:09 +00:00
Pete Batard
92fd7636a7 [loc] fix multiple issues with the ISO progress dialog
* Fix language not being applied when switching locale
* Disable controls when scanning is in progress
* Fix Cancel button staying disabled
* Also fix trailing whitespaces and typo in loc file
* Closes #258
2013-12-27 16:06:59 +00:00
Pete Batard
24e73c5e10 [efi] set UEFI mode when a pure EFI ISO is selected
* Closes #168
* Also fix various VS Code Analysis warnings
2013-12-22 20:48:57 +00:00
Pete Batard
63e1fe3d55 [loc] persits the user-selected locale
* ...since it seems this is what most Rufus users want.
* Also fix a typo in the Malay translation (reported by hyxer)
* Closes #250
2013-12-22 18:28:38 +00:00
Pete Batard
36693d2144 [core] detect memory cards in card readers
* Also remove drives with no media from the list
* Closes #18
2013-12-20 18:32:10 +00:00
Pete Batard
897becd290 [loc] set chkdsk and format output to use English locale
* Also fix percentage not being displayed when using slow format
* Also use GetUserDefaultUILanguage() rather than GetUserDefaultLCID()
  to get the user preferred locale.
* Closes #189
2013-12-20 03:20:07 +00:00
Pete Batard
18c9df18b5 [loc] set log messages to use English locale
* This is done to ensure I can understand logs that are sent to me,
  even when a non English locale is used.
* Closes #188.
2013-12-19 23:56:40 +00:00
Pete Batard
c9d44a5303 [core] HDD vs UFD improvements
* This should address the improperly listed UFDs from #242
2013-12-15 21:58:33 +00:00
Pete Batard
7c35343da7 [loc] add support for Locale registry setting
* Closes #246
* Also bump version
2013-12-15 21:27:25 +00:00
Pete Batard
d2b623fbfa [efi] add NTFS support
* As reported at http://www.eightforums.com/tutorials/15458-uefi-bootable-usb-flash-drive-create-windows-27.html#post309665
  and http://forums.mydigitallife.info/threads/46981-Install-Win8-Windows-8-1-UEFI-With-a-Over-sized%28over-4GB%29-install-wim
  it is actually possible to boot and install an EFI system from an NTFS drive
* Closes #228
2013-12-11 19:00:57 +00:00
Pete Batard
054035fea8 v1.4.0 - TAKE THREE (build 343) 2013-12-02 21:16:18 +00:00
Pete Batard
e163ecb9eb [misc] last minute fixes and improvements for v1.4.0
* Fix missing DOS codepages for Asian languages (reported by Kyle)
* Fix wrong label being reported when an USB HDD is present (reported by NaJiyoun)
* Fix potential issue with error message reporting
* Fix ISO button being truncated on high DPI displays
* Improve French and Korean translations
* Improve launch of updated application
2013-11-30 17:39:38 +00:00
Pete Batard
fc44080110 [misc] improve cheat modes
* Alt-F usage was not reflected on the UI (suggested by José Pineda)
* Alt-L usage was not reflected on the UI
* Also update ChangeLog.txt for BETA 2
2013-11-25 22:34:26 +00:00
Pete Batard
fcf16fed25 [iso] update libcdio to latest
* Also remove MSG_176 from English version
* Also perform additional cleanup and remove a Clang warning
* Closes #224
2013-11-23 22:09:39 +00:00
Pete Batard
f97f60d55a [misc] miscellaneous cleanup
* move Spanish translation to its expected location
* set gitattributes for the loc file
* update license, factorize is_x64(), remove unwanted messages
2013-11-23 00:46:06 +00:00
Pete Batard
0206e2036e [core] add a retry when writing ISO files
* Closes #176
* Also fix a crash when displaying an error message (MSG_043 requires a parameter)
* Also display an informative message on interfering security solutions when writing an autorun.inf
* Also revert x64 MSVC target to non-XP so that it can be used for Code Analysis
2013-11-17 22:24:50 +00:00
Pete Batard
d298c2918b [core] UFD vs HDD improvements
* Fix an issue where the parsed drive_type was from the wrong drive
  and remove the global variable
* Add a size check for the score, as well as a GetDriveSize call
* Also update the French translation to v1.0.3
2013-11-17 01:39:43 +00:00
Pete Batard
5d51610c70 [core] finalize UFD vs HDD detection
* Closes #219
2013-11-15 21:39:40 +00:00
Pete Batard
aa0bf0ee2b [core] add HDD vs UFD detection
* Initial scoring to try to differentiate UFDs from HDDs (#219)
* Also improve GetDriveLetter() and add a global for fixed vs removable
* Also fix a bug with reporting of VID:PID with multiple devices
* Also fix a warning in localization
2013-11-14 01:21:50 +00:00
Pete Batard
803a4bff1c [core] SMART/ATA over USB initial support
* This is meant to be used as part of #219
* Also improve WindowsErrorString() so that it doesn't alter the current errcode
2013-11-13 01:07:32 +00:00
Pete Batard
8d50a8491f [core] retrieve the VID:PID of the USB devices enumerated 2013-11-13 00:14:03 +00:00
Pete Batard
86d5f02a20 [misc] improve Windows version detection
* Also update README.txt
* Closes #220
2013-11-05 02:16:49 +00:00
Pete Batard
c544429606 [loc] use a single rufus.loc as translator base
* Remove the need to maintain a new_translation.loc
* Add a sed invocation to remove comments and unwanted stuff
  to generate a final embedded.loc
* Note: sed is only invoked for MinGW.
  MS compilers still embed the unmodified rufus.loc.
* Also fix a small bug when parsing the version.
2013-11-01 21:53:48 +00:00
Pete Batard
c44fa3969d [format] existing volumes with the name "New Volume" should be renamed
* Closes #104
2013-10-31 23:16:44 +00:00
Pete Batard
59496e53c0 [misc] warn about UDF formatting times and 64k MS-DOS
* Closes #149
* Closes #180
2013-10-31 22:59:53 +00:00
Pete Batard
44cc7ea652 [loc] add [v]ersion command support 2013-10-30 20:28:56 +00:00
Pete Batard
6bba8f646b [loc] fix untranslated messages for "another application in use"
* Issue reported by georg1136
2013-10-29 01:40:00 +00:00
Pete Batard
df44b26342 [loc] add language selection menu 2013-10-24 22:59:20 +01:00
Pete Batard
310ed2fb53 [loc] add an option to force update
* This is meant to be used by translators for testing the UI
* Also fix the positioning and centering of boilerplate on the new version dialog
* French translation improvements
2013-10-22 22:46:59 +01:00
Pete Batard
c604bee9ef [loc] misc. fixes
* Use IDCANCEL for license dialog
* Remove Chinese duplicates
* Remove dev debug message
2013-10-19 17:10:06 +01:00
Pete Batard
4046861392 [loc] fix dialog command overrides
* Rufus wasn't overwriting the previous localization command
  if an updated one was being provided.
* Add hash functions required for a more efficient lookup
* Also improve some French translations
2013-10-18 23:08:49 +01:00
Pete Batard
ff28e2027c [loc] fix various localization issues
* Fix missing [b]ase for Chinese and French
* Fix infinite loop when [b]ase is not available for default
* Fix resizing of main dialog forces forcing pos to 0,0
2013-10-17 20:12:16 +01:00
Pete Batard
1cdb58462b [loc] misc. fixes and improvements
* Add support for LCID provision to option -l
* Fix French translation
* Fix memory leak for loc_filename
* Don't delete an external 'rufus.loc' file if present
* Use IETF normalized tags
* Add quick instructions and sample for translators in new_translation.loc
* Improve About dialog
2013-10-16 20:45:34 +01:00
Pete Batard
df06727416 [loc] add localization support
* This is a merge up to commit bd319269aa of the localization branch
* Also fixes Clang warnings
2013-10-15 23:25:54 +01:00
Pete Batard
3c438db3fd [iso] add smart testing for Rock Ridge over Joliet
* Some ISO9660 images (such as Ubuntu) use both Joliet and Rock Ridge,
  so we have to make a choice which should be preferred.
* Since Rock Ridge allows a greater filename length compared to Joliet,
  we perform our scan pass with Joliet disabled, to find out if RR is
  being used and if a filename longer than 64 chars exist. If that is
  the case, we'll perform the extraction using RR, else we'll use Joliet.
* Also add Alt-J and Alt-K to toggle Joliet/Rock Ridge
* Closes #178
2013-10-14 00:02:32 +01:00
Pete Batard
5b2e4d1721 [ui] prevent flicker on large FAT32 format.c
* Also convert 1.4TB FAT32 autolabel to 1_4TB rather than 14TB and
  use 2 decimal points rather than 1
2013-09-22 03:54:50 +01:00
Pete Batard
2945389edc [core] fix large FAT32 formatting for > 1TB disks
* Closes #159
2013-09-22 03:28:56 +01:00
Pete Batard
0defc28b09 [wdk] fix _fseeki64 could not be located in msvcrt.dll on XP
* Closes #162
* Also remove unwanted SetThreadLocale() in rufus.c
2013-07-21 20:56:20 +01:00
Pete Batard
4ac182830d [core] add UDF filesystem support
* Only supported on Vista or later
* Also disable exFAT for XP (requires a KB => not worth it)
* Also improve display of partition data for type 0x07
* Also fix and issue where exFAT/UDF would try to modify PBR
* Also logically move and simplify some of the code
* Closes #157
2013-07-09 00:14:29 +01:00
Pete Batard
bb2949e557 [core] limit large FAT32 to 1 TB
* 1.5 and 2 TB formatting is too flaky for now - remove it
* This limitation can be disabled with Alt-S
* Also fix various smaller issues
2013-07-05 23:58:04 +01:00
Pete Batard
9925cc945d [syslinux] download c32 files in the same directory as the app
* Rufus was downloading c32 files in the last directory browsed, which
  meant that the same file may have had to be downloaded more than once
* Closes #154
2013-07-02 00:45:47 +01:00
Pete Batard
e5da529eca [core] force elevation for unprivileged users
* Using "highestAvailable" elevation allows standard users to run Rufus
  without being prompted for elevations, which prevents them from both
  detecting and formatting USB drives
* Since non administrator access is useless, switch to "requireAdministrator"
* Closes #153
* Also fix small issues with saving log and syslinux detection report
2013-06-30 02:32:51 +01:00
Pete Batard
bbab5a148d [ui] log display improvement
* Shift main dialog left in case of overlap
* Fix loss of application focus when displaying the log
* Display Windows version in the log
* Also switch to LZMA for UPX compression
* Closes #148
2013-06-25 23:46:53 +01:00
Pete Batard
cd5665881c [core] drive handling improvements
* Use IOCTL_DISK_UPDATE_PROPERTIES after partitioning
* Use IOCTL_DISK_DELETE_DRIVE_LAYOUT to invalidate partitions before formatting
* Fix handling of unpartitioned drives
* Increase delay after partitioning
* All of the above should help with the infamous #122
* Also fix display of error messages in ms-sys' file.c as well as stdio.c
* Also add commandline option -f to list fixed drives
2013-06-25 02:55:25 +01:00
Josh Soref
fe3b1eb6f6 [misc] fix spelling mistakes
* Closes #147
2013-06-22 01:15:36 +01:00
Pete Batard
f8c6903d21 [iso] fix support for ISOs with >4GB files
* The creation of UFDs with >4GB files should be allowed for NTFS
* Closes #146
* Also switch MessageBoxA() to UTF8 and update some of the message titles
2013-06-16 22:49:06 +01:00
Pete Batard
163c68d65d [misc] don't list an USB drive if Rufus is running from it
* Suggested by josiasmat
* Closes #143
2013-06-15 22:43:45 +01:00
Pete Batard
1dbaff6897 [syslinux] complete Syslinux v5 support
* Add download and copy of mandatory ldlinux.c32 to target
* With previous patch, this should address all Syslinux v5 related issues
* Closes #142
2013-06-15 17:31:55 +01:00
Pete Batard
df5bce297d [syslinux] initial Syslinux v5 support
* Use .bss and .sys from Syslinux v5.10
* Advanced options allow you to choose between v4 and v5
* Rufus does not currently copy any ldlinux.c32 to the target
2013-06-14 01:55:48 +01:00
Pete Batard
0e1c474ca0 [syslinux] add detection for Syslinux/Isolinux v5.0
* This is not full Syslinux v5.0 support, but only to prevent the (vesa)menu.c32 message from displaying
* Uses the mandatory inclusion of ldlinux.c32 in Isolinux v5.x for the detection
* Part of a fix for #142
2013-06-13 23:46:52 +01:00
Pete Batard
0b64ef1210 [misc] set rufus-next to 1.3.4, update copyright year
* Copyright year in trhe about dialog had not been updated
2013-06-13 23:19:20 +01:00
Pete Batard
b52eb6d81a v1.3.3 (build 250) 2013-06-10 21:57:13 +01:00
Pete Batard
bb1e7c0b2f [misc] use UTF-8 for confirm dialog and fix RC 2013-06-08 01:59:34 +01:00
Pete Batard
e1ff2a5273 [misc] improve messages and dialogs 2013-06-06 23:40:37 +01:00
Pete Batard
d3238d7210 [misc] fix MinGW compilation issues 2013-06-04 00:44:49 +01:00
Pete Batard
a17acd1a22 [ui] add fixed disk detection to the advanced options
* Tie unpartitioned drive listing to the fixed disk option
* Also ensure that the log and main dialog windows are the same size
2013-06-03 21:32:22 +01:00
Pete Batard
22808893bc [misc] small enhancements
* Add detection for user cancellation during between atomic format operations
* Clear existing PBR along with MBR/GPT data
* Improve log messages
2013-06-03 19:55:23 +01:00
Pete Batard
4da36fa321 [core] low level drive handling redesign
* Better split of physical vs logical
* Add handling of unmounted volumes by GUID
* Force large FAT32 cheat mode
* Improve user messages and fix some UI issues
2013-04-08 00:10:58 +01:00
Pete Batard
63e6c02f02 [core] allow detection and format of "raw" drives
* eg. GPT drives with no partitions were not enumerated by default
* fixed disk mode needs to be enabled for this detection to occur
* also fix the unwanted use of a drive letter in GetDrivePartitionData
* also add a check for going over MAX_DRIVES
* also fix improper separator line in FreeDOS menu due to UTF-8 source
* closes #124
2013-02-10 21:56:21 +00:00
Pete Batard
a16d35698f [misc] various fixes and improvements
* add commandline usage guide
* use -w 150 instead of /W for updated app launch
* fix enabling/disabling of advanced options for UEFI/exFAT
* test for >4GB files for UEFI
* fix warning with freopen
2013-02-04 23:15:11 +00:00
Pete Batard
932df022c5 [cmdline] initial commandline support
* part of issue #111
* add getopt dependency for MS compilers
* enable the provision of an ISO as parameter
* also fixes shadowed sevenzip_path in vhd.c
2013-02-04 01:14:28 +00:00
Pete Batard
d2e7e003c3 [efi] check for 7-zip path in HKLM
* Closes #121
* Also update registry handling
* Issues reported by Ronny Kalusniok
2013-02-02 16:57:46 +00:00
Pete Batard
0cc39d0222 [efi] add mbr UEFI marker for partition scheme reselection
* without the marker, an UFD created as MBR for UEFI will be seen
  as MBR for BIOS + UEFI. We want Rufus to be able to select the
  settings that were used for the drive creation.
* Also hides #116 under the carpet and fix non RUFUS_DEBUG compilation
2013-01-27 20:56:57 +00:00
Pete Batard
09b7314f98 [efi] improve partition scheme details and tooltips
* Also fix automated filesystem selection when switching schemes around
2013-01-27 01:40:09 +00:00
Pete Batard
647d9f18ad [misc] refactoring and cleanup - part 2
* add GetResource() function call to handle resource loading and
  revert 98ff7a931a
* add separate BootCheck() call
* better handling of passes tooltip
* remove superfluous backslashes
* fix standalone EFI support
* add GPL v3 license file and update README.txt
2013-01-25 01:56:28 +00:00
Pete Batard
bba1772940 [misc] refactoring and cleanup - part 1
* add stdfn.c and move the relevant standard calls there
* move most of GetDriveInfo() to drive.c
* rename IDC_DOS/hDos to IDC_BOOT/hBoot
2013-01-24 21:30:11 +00:00
Pete Batard
c8acf1b84a [misc] cleanup and refactoring + fix WIM 7z minor issue
* remove hardcoded path from WimExtractFile_7z
* move some drive related functions to drive.c
* cleanup
2013-01-22 02:40:43 +00:00
Pete Batard
8ff8b41273 [misc] set rufus-next to 1.3.2
* Also fixed a couple Clang, MSVC Analyzer and MinGW64 warnings
2013-01-20 23:34:13 +00:00
Pete Batard
0196de6f4d [efi] add Windows 7 EFI support for XP and Vista
* Requires 7-Zip for WIM extraction as wimgapi.dll is not available
* Also add more comprehensive choice between MBR/GPT and BIOS/UEFI
2013-01-20 22:46:11 +00:00
Pete Batard
84e4aecfcd [efi] add support for Windows 7 UEFI boot
* Add WIM file handling in vhd.c to extract bootx64.efi
* x64 only, since Microsoft does not provide Win7 x86 EFI support
2013-01-19 04:04:54 +00:00
Pete Batard
997c0a0f28 [gpt] add support for GPT partitioning and EFI boot
* Contains the bulk of the code required to address #11
* Tested with Windows 8 Pro x64 (en-gb_windows_8_x64_dvd_915412.iso)
  and Arch Linux (archlinux-2013.01.04-dual.iso) against an UEFI 2.1 BIOS
* Also fixes missing status report beta versions check
2013-01-18 01:39:24 +00:00
Pete Batard
0b53ddd8b3 [ui] indicate the partition scheme created by Rufus
* This is in anticipation of GPT support (#11)
2013-01-09 23:39:31 +00:00
Pete Batard
24b66bf9bb [ui] tell the user if we're using Large FAT32 2013-01-09 23:24:31 +00:00
Pete Batard
c4cb9d03c1 [misc] fix VS2012 Code Analysis warnings
* Only for files that aren't part of external dependencies
* Also update copyright date
2013-01-09 21:54:28 +00:00
Pete Batard
13a6b6b751 [iso] add support for VMWare ESXi 5.1
* Closes #98
* Also closes #113
* Also improves on the ISO analysis report
2012-12-15 03:27:14 +00:00
Pete Batard
5a53cb3b9c [updates] add "Check Now" button
* Also reword update policy and adjust timings
* Also fix ISO extraction window title
2012-12-09 20:36:29 +00:00
Pete Batard
bdbc9ed9c0 [misc] set rufus-next to 1.3.0 and fixed #103
* Closes #103
2012-12-09 19:37:56 +00:00
Pete Batard
2d53ea10ac [net] Check for application update (part 8)
* Closes #102
* Add beta channel check
* Add version and min platform checks
* Also fixes update settings not reflecting the registry
2012-12-07 00:54:40 +00:00
Pete Batard
b315805fa4 [ui] Almost there: Check for application update (part 7)
* Add an abort during download
* Add automated launching of the new version
* Make DownloadFile() more generic with regards to progress indicators
2012-12-06 01:40:44 +00:00
Pete Batard
25e999ded9 [ui] Why, it's the check for application update (part 6)
* Use TortoiseGit inspired notification and download dialog
2012-12-05 01:53:10 +00:00
Pete Batard
4251e78fcd [net] Check for application update (part 5)
* Add dialog for new release notification
* Do not check for updates during format or ISO ops
* Add RTF support for parser and security improvements
* Also improve init and exit of progress dialog
2012-12-04 02:09:41 +00:00
Pete Batard
eed0b78ff0 [net] Check for application update (part 4)
* Also improve Windows version check
2012-12-02 03:50:08 +00:00
Pete Batard
8506e47fd3 [misc] fix Clang warnings 2012-11-30 00:18:28 +00:00
Pete Batard
f1929d7014 [ui] factorize code and remove unused one
* Merge Notification and Question
* Remove bold and url related workarounds
* also switch some files to UTF-8
2012-11-29 23:14:36 +00:00
Pete Batard
454010c27c [ui] use richedit for about dialog and other improvements
* Add template for updates policy and settings
2012-11-29 02:59:52 +00:00
Pete Batard
8572387647 [net] Check for application update (part 3)
* Also add Alt-R cheat mode to delete app registry keys
* Also update sign script to use Win8 WDK
2012-11-22 01:52:33 +00:00
Pete Batard
05d7b757e6 [net] Check for application update (part 1)
* Switched from WinHTTP to WinInet and removed net.h
* Added support for registry operations
2012-11-08 01:20:48 +00:00
Pete Batard
66b1f8006e [ui] fix bootlist and label issues
* Fixes only MS-DOS option being proposed when no drive is present
* Fixes only MS-DOS available when an empty card reader is detected first
* Fixes loss of user input label when switching between boot options
  NB: ISO label is forced over user input as distros such as Arch Linux
  want to see a specific label for the USB
* Closes #95
* Closes #96
2012-11-04 21:39:25 +00:00