svn path=/branches/setup_improvements/; revision=75751
WCHAR SrcPath[MAX_PATH];
WCHAR DstPath[MAX_PATH];
WCHAR SrcPath[MAX_PATH];
WCHAR DstPath[MAX_PATH];
- /* Format the floppy first */
+ /* Verify that the floppy disk is accessible */
+ if (DoesDirExist(NULL, FloppyDevice.Buffer) == FALSE)
+ return STATUS_DEVICE_NOT_READY;
+
+ /* Format the floppy disk */
FatFS = GetFileSystemByName(L"FAT");
if (!FatFS)
{
FatFS = GetFileSystemByName(L"FAT");
if (!FatFS)
{
}
else if (Ir->Event.KeyEvent.uChar.AsciiChar == 0x0D) /* ENTER */
{
}
else if (Ir->Event.KeyEvent.uChar.AsciiChar == 0x0D) /* ENTER */
{
- if (DoesDirExist(NULL, L"\\Device\\Floppy0\\") == FALSE)
- {
- MUIDisplayError(ERROR_NO_FLOPPY, Ir, POPUP_WAIT_ENTER);
- return BOOT_LOADER_FLOPPY_PAGE;
- }
-
- Status = InstallFatBootcodeToFloppy(&USetupData.SourceRootPath, &USetupData.DestinationArcPath);
+ Status = InstallFatBootcodeToFloppy(&USetupData.SourceRootPath,
+ &USetupData.DestinationArcPath);
if (!NT_SUCCESS(Status))
{
if (!NT_SUCCESS(Status))
{
- /* Print error message */
+ if (Status == STATUS_DEVICE_NOT_READY)
+ MUIDisplayError(ERROR_NO_FLOPPY, Ir, POPUP_WAIT_ENTER);
+
+ /* TODO: Print error message */
return BOOT_LOADER_FLOPPY_PAGE;
}
return BOOT_LOADER_FLOPPY_PAGE;
}
DestinationDevicePathBuffer);
if (!NT_SUCCESS(Status))
{
DestinationDevicePathBuffer);
if (!NT_SUCCESS(Status))
{
- DPRINT1("InstallMbrBootCodeToDisk() failed (Status %lx)\n",
- Status);
+ DPRINT1("InstallMbrBootCodeToDisk() failed (Status %lx)\n", Status);
MUIDisplayError(ERROR_INSTALL_BOOTCODE, Ir, POPUP_WAIT_ENTER);
return QUIT_PAGE;
}
MUIDisplayError(ERROR_INSTALL_BOOTCODE, Ir, POPUP_WAIT_ENTER);
return QUIT_PAGE;
}