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

[misc] improve messages and dialogs

This commit is contained in:
Pete Batard 2013-06-06 23:40:37 +01:00
parent b0e131e5e4
commit e1ff2a5273
5 changed files with 357 additions and 51 deletions

View file

@ -383,7 +383,7 @@ BOOL GetDrivePartitionData(DWORD DriveIndex, char* FileSystemName, DWORD FileSys
r = DeviceIoControl(hPhysical, IOCTL_DISK_GET_DRIVE_GEOMETRY_EX, r = DeviceIoControl(hPhysical, IOCTL_DISK_GET_DRIVE_GEOMETRY_EX,
NULL, 0, geometry, sizeof(geometry), &size, NULL); NULL, 0, geometry, sizeof(geometry), &size, NULL);
if (!r || size <= 0) { if (!r || size <= 0) {
uprintf("Could not get geometry for drive #%d: %s\n", DriveIndex, WindowsErrorString()); uprintf("Could not get geometry for drive 0x%02x: %s\n", DriveIndex, WindowsErrorString());
safe_closehandle(hPhysical); safe_closehandle(hPhysical);
return FALSE; return FALSE;
} }
@ -396,7 +396,7 @@ BOOL GetDrivePartitionData(DWORD DriveIndex, char* FileSystemName, DWORD FileSys
r = DeviceIoControl(hPhysical, IOCTL_DISK_GET_DRIVE_LAYOUT_EX, r = DeviceIoControl(hPhysical, IOCTL_DISK_GET_DRIVE_LAYOUT_EX,
NULL, 0, layout, sizeof(layout), &size, NULL ); NULL, 0, layout, sizeof(layout), &size, NULL );
if (!r || size <= 0) { if (!r || size <= 0) {
uprintf("Could not get layout for drive #d: %s\n", DriveIndex, WindowsErrorString()); uprintf("Could not get layout for drive 0x%02x: %s\n", DriveIndex, WindowsErrorString());
return FALSE; return FALSE;
} }

View file

@ -881,7 +881,7 @@ static BOOL WriteMBR(HANDLE hPhysicalDrive)
r = write_syslinux_mbr(&fake_fd); r = write_syslinux_mbr(&fake_fd);
} else { } else {
if ((IS_WINPE(iso_report.winpe) && !iso_report.uses_minint) || (IsChecked(IDC_RUFUS_MBR))) { if ((IS_WINPE(iso_report.winpe) && !iso_report.uses_minint) || (IsChecked(IDC_RUFUS_MBR))) {
uprintf("Using Rufus bootable USB selection MBR\n"); uprintf("Using " APPLICATION_NAME " bootable USB selection MBR\n");
r = WriteRufusMBR(&fake_fd); r = WriteRufusMBR(&fake_fd);
} else { } else {
uprintf("Using Windows 7 MBR\n"); uprintf("Using Windows 7 MBR\n");
@ -1243,7 +1243,7 @@ DWORD WINAPI FormatThread(LPVOID param)
if (log_fd == NULL) { if (log_fd == NULL) {
uprintf("Could not create log file for bad blocks check\n"); uprintf("Could not create log file for bad blocks check\n");
} else { } else {
fprintf(log_fd, "Rufus bad blocks check started on: %04d.%02d.%02d %02d:%02d:%02d\n", fprintf(log_fd, APPLICATION_NAME " bad blocks check started on: %04d.%02d.%02d %02d:%02d:%02d\n",
lt.wYear, lt.wMonth, lt.wDay, lt.wHour, lt.wMinute, lt.wSecond); lt.wYear, lt.wMonth, lt.wDay, lt.wHour, lt.wMinute, lt.wSecond);
fflush(log_fd); fflush(log_fd);
} }
@ -1271,7 +1271,7 @@ DWORD WINAPI FormatThread(LPVOID param)
report.num_corruption_errors); report.num_corruption_errors);
fprintf(log_fd, "%s", bb_msg); fprintf(log_fd, "%s", bb_msg);
GetLocalTime(&lt); GetLocalTime(&lt);
fprintf(log_fd, "Rufus bad blocks check ended on: %04d.%02d.%02d %02d:%02d:%02d\n", fprintf(log_fd, APPLICATION_NAME " bad blocks check ended on: %04d.%02d.%02d %02d:%02d:%02d\n",
lt.wYear, lt.wMonth, lt.wDay, lt.wHour, lt.wMinute, lt.wSecond); lt.wYear, lt.wMonth, lt.wDay, lt.wHour, lt.wMinute, lt.wSecond);
fclose(log_fd); fclose(log_fd);
safe_sprintf(&bb_msg[strlen(bb_msg)], sizeof(bb_msg)-strlen(bb_msg)-1, safe_sprintf(&bb_msg[strlen(bb_msg)], sizeof(bb_msg)-strlen(bb_msg)-1,

View file

@ -314,7 +314,7 @@ BOOL DownloadFile(const char* url, const char* file, HWND hProgressDialog)
HttpQueryInfoA(hRequest, HTTP_QUERY_STATUS_CODE|HTTP_QUERY_FLAG_NUMBER, (LPVOID)&dwStatus, &dwSize, NULL); HttpQueryInfoA(hRequest, HTTP_QUERY_STATUS_CODE|HTTP_QUERY_FLAG_NUMBER, (LPVOID)&dwStatus, &dwSize, NULL);
if (dwStatus != 200) { if (dwStatus != 200) {
error_code = ERROR_INTERNET_ITEM_NOT_FOUND; error_code = ERROR_INTERNET_ITEM_NOT_FOUND;
uprintf("Unable to acess file. Server status %d\n", dwStatus); uprintf("Unable to acess file: Server status %d\n", dwStatus);
goto out; goto out;
} }
dwSize = sizeof(dwTotalSize); dwSize = sizeof(dwTotalSize);
@ -326,7 +326,7 @@ BOOL DownloadFile(const char* url, const char* file, HWND hProgressDialog)
fd = fopen(file, "wb"); fd = fopen(file, "wb");
if (fd == NULL) { if (fd == NULL) {
uprintf("Unable to create file %s: %s\n", file, WinInetErrorString()); uprintf("Unable to create file '%s': %s\n", file, WinInetErrorString());
goto out; goto out;
} }
@ -342,7 +342,7 @@ BOOL DownloadFile(const char* url, const char* file, HWND hProgressDialog)
SendMessage(hProgressBar, PBM_SETPOS, (WPARAM)(MAX_PROGRESS*((1.0f*dwSize)/(1.0f*dwTotalSize))), 0); SendMessage(hProgressBar, PBM_SETPOS, (WPARAM)(MAX_PROGRESS*((1.0f*dwSize)/(1.0f*dwTotalSize))), 0);
PrintStatus(0, FALSE, "Downloading: %0.1f%%\n", (100.0f*dwSize)/(1.0f*dwTotalSize)); PrintStatus(0, FALSE, "Downloading: %0.1f%%\n", (100.0f*dwSize)/(1.0f*dwTotalSize));
if (fwrite(buf, 1, dwDownloaded, fd) != dwDownloaded) { if (fwrite(buf, 1, dwDownloaded, fd) != dwDownloaded) {
uprintf("Error writing file %s: %s\n", file, WinInetErrorString()); uprintf("Error writing file '%s': %s\n", file, WinInetErrorString());
goto out; goto out;
} }
} }
@ -353,7 +353,7 @@ BOOL DownloadFile(const char* url, const char* file, HWND hProgressDialog)
goto out; goto out;
} else { } else {
r = TRUE; r = TRUE;
uprintf("Successfully downloaded %s\n", file); uprintf("Successfully downloaded '%s'\n", file);
} }
out: out:
@ -536,7 +536,7 @@ static DWORD WINAPI CheckForUpdatesThread(LPVOID param)
goto out; goto out;
continue; continue;
} }
vuprintf("Found match for %s on server %s.", urlpath, server_url); vuprintf("Found match for %s on server %s", urlpath, server_url);
dwSize = sizeof(mime); dwSize = sizeof(mime);
HttpQueryInfoA(hRequest, HTTP_QUERY_CONTENT_TYPE, (LPVOID)&mime, &dwSize, NULL); HttpQueryInfoA(hRequest, HTTP_QUERY_CONTENT_TYPE, (LPVOID)&mime, &dwSize, NULL);
@ -557,11 +557,9 @@ static DWORD WINAPI CheckForUpdatesThread(LPVOID param)
WriteRegistryKey64(REGKEY_HKCU, REGKEY_LAST_UPDATE, server_time); WriteRegistryKey64(REGKEY_HKCU, REGKEY_LAST_UPDATE, server_time);
// Might as well let the user know // Might as well let the user know
if (!force_update_check) { if (!force_update_check) {
if (local_time > server_time + 600) { if ((local_time > server_time + 600) || (local_time < server_time - 600)) {
uprintf("Your local clock appears more than 10 minutes early - You ought to fix that...\n"); uprintf("IMPORTANT: Your local clock is more than 10 minutes in the %s. Unless you fix this, " APPLICATION_NAME " may not be able to check for updates...",
} (local_time > server_time + 600)?"future":"past");
if (local_time < server_time - 600) {
uprintf("Your local clock appears more than 10 minutes late - you ought to fix that...\n");
} }
} }
@ -635,7 +633,7 @@ BOOL CheckForUpdates(BOOL force)
if (update_check_in_progress) if (update_check_in_progress)
return FALSE; return FALSE;
if (CreateThread(NULL, 0, CheckForUpdatesThread, NULL, 0, NULL) == NULL) { if (CreateThread(NULL, 0, CheckForUpdatesThread, NULL, 0, NULL) == NULL) {
uprintf("Unable to start check for updates thread"); uprintf("Unable to start update check thread");
return FALSE; return FALSE;
} }
return TRUE; return TRUE;

View file

@ -336,7 +336,7 @@ static BOOL GetDriveInfo(int ComboIndex)
return FALSE; return FALSE;
if (!DefineClusterSizes()) { if (!DefineClusterSizes()) {
uprintf("no file system is selectable for this drive\n"); uprintf("No file system is selectable for this drive\n");
return FALSE; return FALSE;
} }
@ -622,7 +622,7 @@ static BOOL GetUSBDevices(DWORD devnum)
if(GetLastError() != ERROR_NO_MORE_ITEMS) { if(GetLastError() != ERROR_NO_MORE_ITEMS) {
uprintf("SetupDiEnumDeviceInterfaces failed: %s\n", WindowsErrorString()); uprintf("SetupDiEnumDeviceInterfaces failed: %s\n", WindowsErrorString());
} else { } else {
uprintf("Device was eliminated because it doesn't report itself as a disk\n"); uprintf("Device was eliminated because it didn't report itself as a disk\n");
} }
break; break;
} }
@ -631,7 +631,7 @@ static BOOL GetUSBDevices(DWORD devnum)
if(GetLastError() == ERROR_INSUFFICIENT_BUFFER) { if(GetLastError() == ERROR_INSUFFICIENT_BUFFER) {
devint_detail_data = (PSP_DEVICE_INTERFACE_DETAIL_DATA_A)calloc(1, size); devint_detail_data = (PSP_DEVICE_INTERFACE_DETAIL_DATA_A)calloc(1, size);
if (devint_detail_data == NULL) { if (devint_detail_data == NULL) {
uprintf("unable to allocate data for SP_DEVICE_INTERFACE_DETAIL_DATA\n"); uprintf("Unable to allocate data for SP_DEVICE_INTERFACE_DETAIL_DATA\n");
return FALSE; return FALSE;
} }
devint_detail_data->cbSize = sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA_A); devint_detail_data->cbSize = sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA_A);
@ -651,7 +651,7 @@ static BOOL GetUSBDevices(DWORD devnum)
hDrive = CreateFileA(devint_detail_data->DevicePath, GENERIC_READ|GENERIC_WRITE, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL); hDrive = CreateFileA(devint_detail_data->DevicePath, GENERIC_READ|GENERIC_WRITE, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL);
if(hDrive == INVALID_HANDLE_VALUE) { if(hDrive == INVALID_HANDLE_VALUE) {
uprintf("could not open '%s': %s\n", devint_detail_data->DevicePath, WindowsErrorString()); uprintf("Could not open '%s': %s\n", devint_detail_data->DevicePath, WindowsErrorString());
continue; continue;
} }
@ -888,10 +888,8 @@ BOOL CALLBACK LogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
log_buffer = (char*)malloc(log_size); log_buffer = (char*)malloc(log_size);
if (log_buffer != NULL) { if (log_buffer != NULL) {
log_size = GetDlgItemTextU(hDlg, IDC_LOG_EDIT, log_buffer, log_size); log_size = GetDlgItemTextU(hDlg, IDC_LOG_EDIT, log_buffer, log_size);
if (log_size == 0) { if (log_size != 0) {
uprintf("Nothing to save.\n"); log_size--; // remove NUL terminator
} else {
log_size--; // remove NULL terminator
filepath = FileDialog(TRUE, app_dir, "rufus.log", "log", "Rufus log"); filepath = FileDialog(TRUE, app_dir, "rufus.log", "log", "Rufus log");
if (filepath != NULL) { if (filepath != NULL) {
FileIO(TRUE, filepath, &log_buffer, &log_size); FileIO(TRUE, filepath, &log_buffer, &log_size);
@ -1033,16 +1031,14 @@ DWORD WINAPI ISOScanThread(LPVOID param)
} }
if ((!iso_report.has_bootmgr) && (!iso_report.has_isolinux) && (!IS_WINPE(iso_report.winpe)) && (!iso_report.has_efi)) { if ((!iso_report.has_bootmgr) && (!iso_report.has_isolinux) && (!IS_WINPE(iso_report.winpe)) && (!iso_report.has_efi)) {
MessageBoxU(hMainDialog, "This version of Rufus only supports bootable ISOs\n" MessageBoxU(hMainDialog, "This version of Rufus only supports bootable ISOs\n"
"based on 'bootmgr/WinPE', 'isolinux' or EFI boot.\n" "based on bootmgr/WinPE, isolinux or EFI.\n"
"This ISO image doesn't appear to use either...", "Unsupported ISO", MB_OK|MB_ICONINFORMATION); "This ISO doesn't appear to use either...", "Unsupported ISO", MB_OK|MB_ICONINFORMATION);
safe_free(iso_path); safe_free(iso_path);
SetMBRProps(); SetMBRProps();
} else if ((iso_report.has_efi || iso_report.has_win7_efi) && (iso_report.has_4GB_file)) { } else if ((iso_report.has_efi || iso_report.has_win7_efi) && (iso_report.has_4GB_file)) {
// Who the heck decided that using FAT32 for UEFI booting, in late 200x, was a great idea?!? // Who the heck decided that using FAT32 for UEFI boot was a great idea?!?
MessageBoxU(hMainDialog, "Congratulations! You have just exposed the shortshightedness of the UEFI committee, by simply " MessageBoxU(hMainDialog, "This ISO image contains a file larger than 4 GB and cannot be used to boot in EFI mode from USB.\r\n"
"trying to use an EFI based image with a file that is larger than 4 GB.\nPlease address your complaints to any of " "This is a technical limitation from the UEFI/FAT32 process, not from " APPLICATION_NAME ".", "Non USB-UEFI compatible ISO", MB_OK|MB_ICONINFORMATION);
"the companies listed at http://www.uefi.org/about/, for sticking with FAT32 as the default EFI filesystem and thus "
"preventing easy booting of large VHDs with UEFI.", "Who the heck couldn't see that one coming?", MB_OK|MB_ICONINFORMATION);
safe_free(iso_path); safe_free(iso_path);
} else { } else {
for(i=0; i<NB_OLD_C32; i++) { for(i=0; i<NB_OLD_C32; i++) {
@ -1061,8 +1057,8 @@ DWORD WINAPI ISOScanThread(LPVOID param)
"- Select 'Yes' to connect to the internet and replace the file.\n" "- Select 'Yes' to connect to the internet and replace the file.\n"
"- Select 'No' to leave the existing ISO file unmodified.\n" "- Select 'No' to leave the existing ISO file unmodified.\n"
"If you don't know what to do, you should select 'Yes'.\n\n" "If you don't know what to do, you should select 'Yes'.\n\n"
"Note: the file will be downloaded in the current directory. Once a\n" "Note that the file will be downloaded in the current directory and once a\n"
"%s exists there, it will always be used as replacement.\n", old_c32_name[i], old_c32_name[i]); "'%s' exists there, it will always be used as replacement.\n", old_c32_name[i], old_c32_name[i]);
safe_sprintf(msg_title, sizeof(msg_title), "Replace %s?", old_c32_name[i]); safe_sprintf(msg_title, sizeof(msg_title), "Replace %s?", old_c32_name[i]);
if (MessageBoxA(hMainDialog, msg, msg_title, MB_YESNO|MB_ICONWARNING) == IDYES) { if (MessageBoxA(hMainDialog, msg, msg_title, MB_YESNO|MB_ICONWARNING) == IDYES) {
SetWindowTextU(hISOProgressDlg, "Downloading file..."); SetWindowTextU(hISOProgressDlg, "Downloading file...");
@ -1280,7 +1276,7 @@ void InitDialog(HWND hDlg)
token = strtok(tmp, "v"); token = strtok(tmp, "v");
for (i=0; (i<4) && ((token = strtok(NULL, ".")) != NULL); i++) for (i=0; (i<4) && ((token = strtok(NULL, ".")) != NULL); i++)
rufus_version[i] = (uint16_t)atoi(token); rufus_version[i] = (uint16_t)atoi(token);
uprintf("Rufus version %d.%d.%d.%d\n", rufus_version[0], rufus_version[1], rufus_version[2], rufus_version[3]); uprintf(APPLICATION_NAME " version %d.%d.%d.%d\n", rufus_version[0], rufus_version[1], rufus_version[2], rufus_version[3]);
// Prefer FreeDOS to MS-DOS // Prefer FreeDOS to MS-DOS
selection_default = DT_FREEDOS; selection_default = DT_FREEDOS;
@ -1367,7 +1363,7 @@ void InitDialog(HWND hDlg)
"This should only be necessary for XP installation" , 10000); "This should only be necessary for XP installation" , 10000);
CreateTooltip(GetDlgItem(hDlg, IDC_EXTRA_PARTITION), "Create an extra hidden partition and try to align partitions boundaries.\n" CreateTooltip(GetDlgItem(hDlg, IDC_EXTRA_PARTITION), "Create an extra hidden partition and try to align partitions boundaries.\n"
"This can improve boot detection for older BIOSes", -1); "This can improve boot detection for older BIOSes", -1);
CreateTooltip(GetDlgItem(hDlg, IDC_ENABLE_FIXED_DISKS), "Enable detection for disks not normally detected by Rufus. " CreateTooltip(GetDlgItem(hDlg, IDC_ENABLE_FIXED_DISKS), "Enable detection for disks not normally detected by " APPLICATION_NAME ". "
"USE AT YOUR OWN RISKS!!!", -1); "USE AT YOUR OWN RISKS!!!", -1);
CreateTooltip(GetDlgItem(hDlg, IDC_START), "Start the formatting operation.\nThis will DESTROY any data on the target!", -1); CreateTooltip(GetDlgItem(hDlg, IDC_START), "Start the formatting operation.\nThis will DESTROY any data on the target!", -1);
CreateTooltip(GetDlgItem(hDlg, IDC_ABOUT), "Licensing information and credits", -1); CreateTooltip(GetDlgItem(hDlg, IDC_ABOUT), "Licensing information and credits", -1);
@ -1696,10 +1692,11 @@ static INT_PTR CALLBACK MainCallback(HWND hDlg, UINT message, WPARAM wParam, LPA
if (nDeviceIndex != CB_ERR) { if (nDeviceIndex != CB_ERR) {
if ((IsChecked(IDC_BOOT)) && (!BootCheck())) if ((IsChecked(IDC_BOOT)) && (!BootCheck()))
break; break;
// TODO: use UTF-8 here with MessageBoxU
GetWindowTextW(hDeviceList, wtmp, ARRAYSIZE(wtmp)); GetWindowTextW(hDeviceList, wtmp, ARRAYSIZE(wtmp));
_snwprintf(wstr, ARRAYSIZE(wstr), L"WARNING: ALL DATA ON DEVICE %s\r\nWILL BE DESTROYED.\r\n" _snwprintf(wstr, ARRAYSIZE(wstr), L"WARNING: ALL DATA ON DEVICE '%s'\r\nWILL BE DESTROYED.\r\n"
L"To continue with this operation, click OK. To quit click CANCEL.", wtmp); L"To continue with this operation, click OK. To quit click CANCEL.", wtmp);
if (MessageBoxW(hMainDialog, wstr, L"Rufus", MB_OKCANCEL|MB_ICONWARNING) == IDOK) { if (MessageBoxW(hMainDialog, wstr, LTEXT(APPLICATION_NAME), MB_OKCANCEL|MB_ICONWARNING) == IDOK) {
// Disable all controls except cancel // Disable all controls except cancel
EnableControls(FALSE); EnableControls(FALSE);
DeviceNum = (DWORD)ComboBox_GetItemData(hDeviceList, nDeviceIndex); DeviceNum = (DWORD)ComboBox_GetItemData(hDeviceList, nDeviceIndex);
@ -1848,7 +1845,9 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine
{0, 0, NULL, 0} {0, 0, NULL, 0}
}; };
uprintf("*** RUFUS INIT ***\n"); uprintf("*** " APPLICATION_NAME " init ***\n");
SetThreadLocale(MAKELCID(LANG_FRENCH, SUBLANG_FRENCH));
// Reattach the console, if we were started from commandline // Reattach the console, if we were started from commandline
if (AttachConsole(ATTACH_PARENT_PROCESS) != 0) { if (AttachConsole(ATTACH_PARENT_PROCESS) != 0) {
@ -1899,14 +1898,14 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine
// in which case we wait for the mutex to be relinquished // in which case we wait for the mutex to be relinquished
if ((safe_strlen(lpCmdLine)==2) && (lpCmdLine[0] == '/') && (lpCmdLine[1] == 'W')) if ((safe_strlen(lpCmdLine)==2) && (lpCmdLine[0] == '/') && (lpCmdLine[1] == 'W'))
wait_for_mutex = 150; // Try to acquire the mutex for 15 seconds wait_for_mutex = 150; // Try to acquire the mutex for 15 seconds
mutex = CreateMutexA(NULL, TRUE, "Global/RUFUS"); mutex = CreateMutexA(NULL, TRUE, "Global/" APPLICATION_NAME);
for (;(wait_for_mutex>0) && (mutex != NULL) && (GetLastError() == ERROR_ALREADY_EXISTS); wait_for_mutex--) { for (;(wait_for_mutex>0) && (mutex != NULL) && (GetLastError() == ERROR_ALREADY_EXISTS); wait_for_mutex--) {
CloseHandle(mutex); CloseHandle(mutex);
Sleep(100); Sleep(100);
mutex = CreateMutexA(NULL, TRUE, "Global/RUFUS"); mutex = CreateMutexA(NULL, TRUE, "Global/" APPLICATION_NAME);
} }
if ((mutex == NULL) || (GetLastError() == ERROR_ALREADY_EXISTS)) { if ((mutex == NULL) || (GetLastError() == ERROR_ALREADY_EXISTS)) {
MessageBoxA(NULL, "Another Rufus application is running.\n" MessageBoxA(NULL, "Another " APPLICATION_NAME " application is running.\n"
"Please close the first application before running another one.", "Please close the first application before running another one.",
"Other instance detected", MB_ICONSTOP); "Other instance detected", MB_ICONSTOP);
goto out; goto out;
@ -2014,7 +2013,7 @@ out:
if (attached_console) if (attached_console)
DetachConsole(); DetachConsole();
CloseHandle(mutex); CloseHandle(mutex);
uprintf("*** RUFUS EXIT ***\n"); uprintf("*** " APPLICATION_NAME " exit ***\n");
#ifdef _CRTDBG_MAP_ALLOC #ifdef _CRTDBG_MAP_ALLOC
_CrtDumpMemoryLeaks(); _CrtDumpMemoryLeaks();
#endif #endif

View file

@ -16,10 +16,10 @@
#undef APSTUDIO_READONLY_SYMBOLS #undef APSTUDIO_READONLY_SYMBOLS
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////
// English resources // Neutral resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_NEU)
LANGUAGE LANG_ENGLISH, SUBLANG_NEUTRAL LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
#pragma code_page(1252) #pragma code_page(1252)
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////
@ -30,7 +30,7 @@ LANGUAGE LANG_ENGLISH, SUBLANG_NEUTRAL
IDD_DIALOG DIALOGEX 12, 12, 206, 329 IDD_DIALOG DIALOGEX 12, 12, 206, 329
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_APPWINDOW EXSTYLE WS_EX_APPWINDOW
CAPTION "Rufus v1.3.3.247" CAPTION "Rufus v1.3.3.248"
FONT 8, "MS Shell Dlg", 400, 0, 0x1 FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN BEGIN
DEFPUSHBUTTON "Start",IDC_START,94,291,50,14 DEFPUSHBUTTON "Start",IDC_START,94,291,50,14
@ -276,8 +276,8 @@ END
// //
VS_VERSION_INFO VERSIONINFO VS_VERSION_INFO VERSIONINFO
FILEVERSION 1,3,3,247 FILEVERSION 1,3,3,248
PRODUCTVERSION 1,3,3,247 PRODUCTVERSION 1,3,3,248
FILEFLAGSMASK 0x3fL FILEFLAGSMASK 0x3fL
#ifdef _DEBUG #ifdef _DEBUG
FILEFLAGS 0x1L FILEFLAGS 0x1L
@ -294,13 +294,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", "1.3.3.247" VALUE "FileVersion", "1.3.3.248"
VALUE "InternalName", "Rufus" VALUE "InternalName", "Rufus"
VALUE "LegalCopyright", "(c) 2011-2013 Pete Batard (GPL v3)" VALUE "LegalCopyright", "(c) 2011-2013 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", "1.3.3.247" VALUE "ProductVersion", "1.3.3.248"
END END
END END
BLOCK "VarFileInfo" BLOCK "VarFileInfo"
@ -320,7 +320,316 @@ END
IDI_ICON ICON "../res/rufus.ico" IDI_ICON ICON "../res/rufus.ico"
IDI_UP ICON "../res/up.ico" IDI_UP ICON "../res/up.ico"
IDI_DOWN ICON "../res/down.ico" IDI_DOWN ICON "../res/down.ico"
#endif // English resources #endif // Neutral resources
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// French (France) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_FRA)
LANGUAGE LANG_FRENCH, SUBLANG_FRENCH
#pragma code_page(1252)
/////////////////////////////////////////////////////////////////////////////
//
// Dialog
//
IDD_DIALOG DIALOGEX 12, 12, 206, 329
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_APPWINDOW
CAPTION "Rufus v1.3.3.248"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
DEFPUSHBUTTON "Lancer",IDC_START,94,291,50,14
PUSHBUTTON "Fermer",IDCANCEL,148,291,50,14
COMBOBOX IDC_DEVICE,8,17,190,33,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
CONTROL "Device",IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,9,6,22,8
COMBOBOX IDC_FILESYSTEM,8,75,190,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "File system",IDC_STATIC,9,64,51,10
COMBOBOX IDC_PARTITION_SCHEME,8,46,190,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "Partition scheme and target system type",IDC_STATIC,9,35,176,8
COMBOBOX IDC_CLUSTERSIZE,8,104,190,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "Cluster size",IDC_STATIC,9,93,105,10
PUSHBUTTON "About...",IDC_ABOUT,8,291,50,14
GROUPBOX "Format Options ",IDC_STATIC,7,149,192,66
EDITTEXT IDC_LABEL,7,131,190,13,ES_AUTOHSCROLL
CONTROL "Check device for bad blocks:",IDC_BADBLOCKS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,161,101,10
CONTROL "Quick format",IDC_QUICKFORMAT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,173,55,10
CONTROL "Create a bootable disk using:",IDC_BOOT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,185,104,10
CONTROL "Create extended label and icon files",IDC_SET_ICON,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,198,131,10
LTEXT "New volume label",IDC_STATIC,9,121,105,10
CONTROL "",IDC_PROGRESS,"msctls_progress32",PBS_SMOOTH | WS_BORDER,8,272,189,9
COMBOBOX IDC_NBPASSES,119,159,49,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
COMBOBOX IDC_BOOTTYPE,119,183,49,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "...",IDC_SELECT_ISO,171,182,22,14,BS_ICON
PUSHBUTTON "T",IDC_TEST,80,291,12,14,NOT WS_VISIBLE
CONTROL "Use Rufus MBR with BIOS ID:",IDC_RUFUS_MBR,"Button",BS_AUTOCHECKBOX | NOT WS_VISIBLE | WS_TABSTOP,13,248,106,10
PUSHBUTTON "",IDC_ADVANCED,63,148,14,10,BS_TOP | BS_FLAT
GROUPBOX "Advanced Options",IDC_ADVANCED_GROUP,7,210,192,54,NOT WS_VISIBLE
COMBOBOX IDC_DISK_ID,119,246,73,30,CBS_DROPDOWNLIST | NOT WS_VISIBLE | WS_VSCROLL | WS_TABSTOP
CONTROL "Add fixes for old BIOSes (extra partition, align, etc.)",IDC_EXTRA_PARTITION,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,235,184,10
CONTROL "List fixed (non-flash) or unpartitionned USB disks",IDC_ENABLE_FIXED_DISKS,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,222,185,10
PUSHBUTTON "Log",IDC_LOG,62,291,18,14
END
IDD_ABOUTBOX DIALOGEX 0, 0, 287, 201
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "A propos de Rufus"
FONT 8, "Microsoft Sans Serif", 400, 0, 0x0
BEGIN
ICON IDI_ICON,IDC_ABOUT_ICON,11,8,20,20
DEFPUSHBUTTON "OK",IDOK,231,181,50,14,WS_GROUP
PUSHBUTTON "License",IDC_ABOUT_LICENSE,46,181,50,14,WS_GROUP
CONTROL "",IDC_ABOUT_COPYRIGHTS,"RichEdit20W",ES_MULTILINE | ES_READONLY | WS_VSCROLL,46,101,235,74,WS_EX_STATICEDGE
CONTROL "",IDC_ABOUT_BLURB,"RichEdit20W",ES_MULTILINE | ES_AUTOHSCROLL | ES_READONLY | WS_TABSTOP,46,7,235,93
PUSHBUTTON "Mises a jour",IDC_ABOUT_UPDATES,100,181,50,14,NOT WS_VISIBLE | WS_GROUP
END
IDD_ISO_EXTRACT DIALOGEX 0, 0, 262, 66
STYLE DS_SETFONT | DS_FIXEDSYS | WS_POPUP | WS_CAPTION
CAPTION "Copying ISO files..."
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
LTEXT "Opening ISO image - please wait...",IDC_ISO_FILENAME,8,10,246,13,SS_PATHELLIPSIS
CONTROL "",IDC_PROGRESS,"msctls_progress32",WS_BORDER,7,26,247,8
PUSHBUTTON "Cancel",IDC_ISO_ABORT,111,43,50,14
END
IDD_LICENSE DIALOGEX 0, 0, 335, 205
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Rufus License"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
DEFPUSHBUTTON "Close",IDOK,278,187,50,14
EDITTEXT IDC_LICENSE_TEXT,7,7,321,176,ES_MULTILINE | ES_READONLY | WS_VSCROLL
END
IDD_LOG DIALOGEX 0, 0, 366, 329
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION
CAPTION "Log"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
EDITTEXT IDC_LOG_EDIT,0,0,366,301,ES_MULTILINE | ES_READONLY | NOT WS_BORDER | WS_VSCROLL,WS_EX_STATICEDGE
PUSHBUTTON "Clear Log",IDC_LOG_CLEAR,198,308,50,14
PUSHBUTTON "Save Log",IDC_LOG_SAVE,253,308,50,14
DEFPUSHBUTTON "Close Log",IDCANCEL,308,308,50,14
END
IDD_NOTIFICATION DIALOGEX 0, 0, 263, 63
STYLE DS_SETFONT | DS_FIXEDSYS | DS_NOFAILCREATE | DS_CENTER | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_THICKFRAME
CAPTION "Rufus"
FONT 8, "MS Shell Dlg", 400, 0, 0x1
BEGIN
LTEXT "",IDC_NOTIFICATION_LINE,0,0,263,39
CONTROL "",IDC_STATIC,"Static",SS_WHITERECT,0,0,263,38
ICON 32516,IDC_NOTIFICATION_ICON,6,6,20,20
LTEXT "",IDC_NOTIFICATION_TEXT,35,10,219,20
DEFPUSHBUTTON "No",IDNO,206,44,50,14
PUSHBUTTON "More information",IDC_MORE_INFO,8,44,63,14,NOT WS_VISIBLE
PUSHBUTTON "Yes",IDYES,154,44,50,14,NOT WS_VISIBLE
END
IDD_UPDATE_POLICY DIALOGEX 0, 0, 287, 198
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Update policy and settings"
FONT 8, "Microsoft Sans Serif", 400, 0, 0x0
BEGIN
ICON IDI_ICON,IDC_ABOUT_ICON,11,8,21,20
DEFPUSHBUTTON "Close",IDCANCEL,221,172,50,14,WS_GROUP
CONTROL "",IDC_POLICY,"RichEdit20W",WS_VSCROLL | 0x804,46,8,235,130,WS_EX_STATICEDGE
COMBOBOX IDC_UPDATE_FREQUENCY,133,155,66,12,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "Check for updates:",IDC_STATIC,52,157,72,11
LTEXT "Include beta versions:",IDC_STATIC,52,173,93,11
COMBOBOX IDC_INCLUDE_BETAS,133,171,36,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
GROUPBOX "Settings",IDC_STATIC,45,145,161,46
PUSHBUTTON "Check Now",IDC_CHECK_NOW,221,154,50,14
GROUPBOX "",IDC_STATIC,210,145,71,46
END
IDD_NEW_VERSION DIALOGEX 0, 0, 384, 268
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Check For Updates - Rufus"
FONT 8, "Microsoft Sans Serif", 400, 0, 0x0
BEGIN
PUSHBUTTON "Close",IDCANCEL,167,244,50,14,WS_GROUP
CONTROL "",IDC_RELEASE_NOTES,"RichEdit20W",WS_VSCROLL | 0x804,15,77,352,88,WS_EX_STATICEDGE
DEFPUSHBUTTON "Download",IDC_DOWNLOAD,293,211,74,14,WS_GROUP
CONTROL "",IDC_PROGRESS,"msctls_progress32",WS_BORDER,15,212,270,11
GROUPBOX "Release Notes",IDC_STATIC,8,63,367,111
LTEXT "A newer version is available. Please download the latest version!",IDC_STATIC,10,32,229,8
LTEXT "[...]",IDC_YOUR_VERSION,10,8,124,8
LTEXT "[...]",IDC_LATEST_VERSION,10,19,129,8
CONTROL "<a href=""http://rufus.akeo.ie"">Click here to go to the website</a>",IDC_WEBSITE,
"SysLink",WS_TABSTOP,143,49,96,9
GROUPBOX "Download",IDC_STATIC,8,177,367,58
EDITTEXT IDC_DOWNLOAD_URL,15,191,351,13,ES_AUTOHSCROLL | ES_READONLY
END
#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//
1 TEXTINCLUDE
BEGIN
"resource.h\0"
END
2 TEXTINCLUDE
BEGIN
"#include <windows.h>\r\n"
"#ifndef IDC_STATIC\r\n"
"#define IDC_STATIC -1\r\n"
"#endif\r\n"
"\0"
END
3 TEXTINCLUDE
BEGIN
"\r\n"
"IDR_SL_LDLINUX_BSS RCDATA ""../res/syslinux/ldlinux.bss""\r\n"
"IDR_SL_LDLINUX_SYS RCDATA ""../res/syslinux/ldlinux.sys""\r\n"
"IDR_BR_MBR_BIN RCDATA ""../res/mbr/mbr.bin""\r\n"
"IDR_FD_COMMAND_COM RCDATA ""../res/freedos/COMMAND.COM""\r\n"
"IDR_FD_KERNEL_SYS RCDATA ""../res/freedos/KERNEL.SYS""\r\n"
"IDR_FD_DISPLAY_EXE RCDATA ""../res/freedos/DISPLAY.EXE""\r\n"
"IDR_FD_KEYB_EXE RCDATA ""../res/freedos/KEYB.EXE""\r\n"
"IDR_FD_MODE_COM RCDATA ""../res/freedos/MODE.COM""\r\n"
"IDR_FD_KB1_SYS RCDATA ""../res/freedos/KEYBOARD.SYS""\r\n"
"IDR_FD_KB2_SYS RCDATA ""../res/freedos/KEYBRD2.SYS""\r\n"
"IDR_FD_KB3_SYS RCDATA ""../res/freedos/KEYBRD3.SYS""\r\n"
"IDR_FD_KB4_SYS RCDATA ""../res/freedos/KEYBRD4.SYS""\r\n"
"IDR_FD_EGA1_CPX RCDATA ""../res/freedos/ega.cpx""\r\n"
"IDR_FD_EGA2_CPX RCDATA ""../res/freedos/ega2.cpx""\r\n"
"IDR_FD_EGA3_CPX RCDATA ""../res/freedos/ega3.cpx""\r\n"
"IDR_FD_EGA4_CPX RCDATA ""../res/freedos/ega4.cpx""\r\n"
"IDR_FD_EGA5_CPX RCDATA ""../res/freedos/ega5.cpx""\r\n"
"IDR_FD_EGA6_CPX RCDATA ""../res/freedos/ega6.cpx""\r\n"
"IDR_FD_EGA7_CPX RCDATA ""../res/freedos/ega7.cpx""\r\n"
"IDR_FD_EGA8_CPX RCDATA ""../res/freedos/ega8.cpx""\r\n"
"IDR_FD_EGA9_CPX RCDATA ""../res/freedos/ega9.cpx""\r\n"
"IDR_FD_EGA10_CPX RCDATA ""../res/freedos/ega10.cpx""\r\n"
"IDR_FD_EGA11_CPX RCDATA ""../res/freedos/ega11.cpx""\r\n"
"IDR_FD_EGA12_CPX RCDATA ""../res/freedos/ega12.cpx""\r\n"
"IDR_FD_EGA13_CPX RCDATA ""../res/freedos/ega13.cpx""\r\n"
"IDR_FD_EGA14_CPX RCDATA ""../res/freedos/ega14.cpx""\r\n"
"IDR_FD_EGA15_CPX RCDATA ""../res/freedos/ega15.cpx""\r\n"
"IDR_FD_EGA16_CPX RCDATA ""../res/freedos/ega16.cpx""\r\n"
"IDR_FD_EGA17_CPX RCDATA ""../res/freedos/ega17.cpx""\r\n"
"IDR_FD_EGA18_CPX RCDATA ""../res/freedos/ega18.cpx""\r\n"
"\r\n"
"// Must reference a manifest for visual styles and elevation\r\n"
"// Oh, and it must happen at the end, or MinGW will ignore it!\r\n"
"#if defined(__GNUC__)\r\n"
"CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST ""common_controls_and_elevation.manifest""\r\n"
"#endif\r\n"
"\0"
END
#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
//
#ifdef APSTUDIO_INVOKED
GUIDELINES DESIGNINFO
BEGIN
IDD_DIALOG, DIALOG
BEGIN
END
IDD_ABOUTBOX, DIALOG
BEGIN
END
IDD_ISO_EXTRACT, DIALOG
BEGIN
END
IDD_LICENSE, DIALOG
BEGIN
END
IDD_LOG, DIALOG
BEGIN
END
IDD_NOTIFICATION, DIALOG
BEGIN
END
IDD_UPDATE_POLICY, DIALOG
BEGIN
END
IDD_NEW_VERSION, DIALOG
BEGIN
END
END
#endif // APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Version
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 1,3,3,248
PRODUCTVERSION 1,3,3,248
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
#else
FILEFLAGS 0x0L
#endif
FILEOS 0x40004L
FILETYPE 0x1L
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "000904b0"
BEGIN
VALUE "CompanyName", "Akeo Consulting (http://akeo.ie)"
VALUE "FileDescription", "Rufus"
VALUE "FileVersion", "1.3.3.248"
VALUE "InternalName", "Rufus"
VALUE "LegalCopyright", "(c) 2011-2013 Pete Batard (GPL v3)"
VALUE "LegalTrademarks", "http://www.gnu.org/copyleft/gpl.html"
VALUE "OriginalFilename", "rufus.exe"
VALUE "ProductName", "Rufus"
VALUE "ProductVersion", "1.3.3.248"
END
END
BLOCK "VarFileInfo"
BEGIN
VALUE "Translation", 0x9, 1200
END
END
/////////////////////////////////////////////////////////////////////////////
//
// Icon
//
// Icon with lowest ID value placed first to ensure application icon
// remains consistent on all systems.
IDI_ICON ICON "../res/rufus.ico"
IDI_UP ICON "../res/up.ico"
IDI_DOWN ICON "../res/down.ico"
#endif // French (France) resources
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////