E_FAIL 0x80004005 error in VirtualBox - causes and solutions
Many users encounter the E_FAIL 0x80004005 error from MachineWrap, MediumWrap, and other components when starting and in some cases before starting a virtual machine in VirtualBox, regardless of the operating system installed on it (Windows 10 and earlier, Linux, and others).
This tutorial details the most common causes of error 0x80004005 in VirtualBox virtual machines and the ways to fix the problem. Some of the readers may find the VirtualBox Virtual Machines for Beginners article helpful.
Table of Contents
Fix error code E_FAIL 0x80004005 in VirtualBox
There are several reasons for the E_FAIL 0x80004005 error in VirtualBox, let's start with some of the simplest ones that are very easy to fix:
- Change the path to the location with the virtual machine files because the drive letter has been changed, the folder containing the virtual machine files has been renamed, the user folder (if the virtual machine folders were inside it, as is usually the default). In this case, when starting VirtualBox (assuming the VB manager was not started before renaming) you will see the "Inaccessible" mark next to the name of the virtual machine and, if selected, information about this error as shown in the following image. Possible solutions: return the original location of the virtual machine (the path will appear at the top along with the File not found message), or delete this virtual machine in the manager and import it from the new location (through the menu Machine - Add).
- Deleting virtual disk files previously used in a virtual machine. Solution - go to the virtual machine settings and remove the deleted virtual disk from the "Storage" section.
- If you have attached a physical disk, flash drive, or other drive to the VirtualBox virtual machine (like in this case: How to connect a physical USB flash drive to the VirtualBox virtual machine), you may get the same error code 0x if that physical drive it is not there, or if you run the VirtualBox administrator not as an administrator, Solutions: reconnect the unit; remove the drive in the virtual machine settings under "Media"; run VirtualBox as administrator.
Simple cases of the error in question have been diagnosed above, but another variant is possible: a virtual machine is running as usual, without recent changes, and yet the error E_FAIL 0x80004005 appears. This is usually caused by problems with the .vbox, .vbox-tmp, and .vbox-prev configuration files found in the folder with each VirtualBox virtual machine.
Let's say our virtual machine is called Win10. So the gist would be as follows: when we start a virtual machine session, VirtualBox renames the Win10.vbox file to Win10.vbox-prev and at the same time creates a Win10.vbox-tmp file in the same folder. This last file will be used as the current configuration file for this session, while .vbox-prev is saved as a backup. When the session ends, Win10.vbox-tmp is renamed to Win10.vbox. At the next boot, everything repeats.
However, if for some reason the process is interrupted in one of the steps, the required .vbox file may not be created, causing an error the next time the virtual machine is started.
To correct the E_FAIL 0x80004005 error in such a case, perform the following steps:
- Completely close the VirtualBox manager, check the processes just in case VirtualBox.exe и VBoxSVC.exe in Task Manager (close them if they are running).
- Go to the folder with your virtual machine. Standard route: C: | User_nameNof_Virtualbox VMsNname_of_virtual_machine.
- In case there is no file in the specified folder virtual_machine_name.vboxbut there are files .vbox-tmp o .vbox-prevSave these files somewhere on your computer just in case.
- Change the file extension .vbox-prev en .vbox
- Run the VirtualBox manager and check if the virtual machine starts now.
- If that didn't work, you can also try instead of .vbox-prev similarly, rename the file .vbox-tmp.
- If the .vbox file was already present in the folder, you can try moving it to another location and then try steps 4-6.
- Previous versions of VirtualBox used .xml files instead of .vbox, but the gist of the solution remains the same for those as well.
As a last resort, if none of the above files are in the location, you can set up a new VirtualBox virtual machine and connect an existing virtual disk to it.
Other possible causes of the error
In case the above options did not help, here are other possible causes that can cause the same problem when running a virtual machine:
Sometimes it also works to fix error 0x80004005 by starting the virtual machine not from the VirtualBox manager, but, after closing it, simply by running the .vbox file from the virtual machine folder.