Come correggere il codice risultato: E_FAIL (0x80004005)

L’errore E_FAIL (0x80004005) su Oracle VM VirtualBox ti impedisce di avviare una sessione di macchina virtuale. Esistono diversi tipi di questi errori e vedrai diversi messaggi che accompagnano il codice di errore in casi separati.

Quindi, naturalmente, ci sono varie possibili cause e correzioni corrispondenti. A seconda della natura del tuo errore, puoi utilizzare i passaggi appropriati dalla guida di seguito.

Sommario

Se volete continuare a leggere questo post su "[page_title]" cliccate sul pulsante "Mostra tutti" e potrete leggere il resto del contenuto gratuitamente. ebstomasborba.pt è un sito specializzato in Tecnologia, Notizie, Giochi e molti altri argomenti che potrebbero interessarvi. Se desiderate leggere altre informazioni simili a [page_title], continuate a navigare sul web e iscrivetevi alle notifiche del blog per non perdere le ultime novità.

Seguir leyendo


Motivi del codice risultato: E_FAIL (0x80004005)

Ecco alcuni dei probabili motivi dell’errore Codice risultato: E_fail (0x80004005):

  • File della macchina virtuale mancante.
  • Hypervisor che interferisce con VirtualBox.
  • Valori di configurazione duplicati nel file vbox.
  • Bug nelle build di VirtualBox.
  • Incompatibilità con il sistema operativo.
  • Driver VirtualBox mancante.
  • Interferenza da parte di applicazioni di terze parti.
  • DLL difettoso a causa del driver grafico.
  • Configurazione errata della scheda di rete.

Innanzitutto, riavvia il PC e accedi alla VM in cui hai riscontrato questo errore. Se l’errore si ripresenta, passare alle possibili soluzioni di seguito.

Codice risultato: E_FAIL (0x80004005) su una particolare macchina virtuale

Il caso più comune di questo errore si verifica a causa di un file della macchina virtuale mancante. Di solito accade quando si forza l’uscita da VirtualBox.

Questo perché VirtualBox memorizza tutte le attività in un file temporaneo durante il suo funzionamento e lo rinomina nel file VM durante un normale arresto.

Puoi risolvere questo problema rinominando manualmente il file. Ecco come puoi farlo:

  1. Vai alla posizione del file della macchina virtuale.
  2. In Windows, di solito è C:Users.VirtualBoxMachines .
    Qui, sostituisci con il nome del tuo profilo utente e con la VM in cui ricevi questo errore.
  3. Se .vbox non esiste, copiare .vbox-tmp e denominare il file copiato come .vbox

Nota: nelle vecchie versioni, l’estensione è .xml anziché .vbox.

Codice risultato: E_FAIL (0x80004005) dovuto all’hypervisor

Se l’errore è dovuto a Hypervisor, probabilmente vedrai VT-x o Hyper-V nei messaggi di errore. È perché Hypervisor è in conflitto con l’utilizzo di VirtualBox delle risorse di virtualizzazione nel tuo sistema. Prova i metodi seguenti per eseguire il debug di questo problema:

Abilita la virtualizzazione nel BIOS/UEFI

È necessario abilitare la virtualizzazione nel sistema per utilizzare VirtualBox. Puoi farlo dalle impostazioni del tuo BIOS/UEFI.

Consulta il nostro articolo su Come abilitare la virtualizzazione nel BIOS per ulteriori informazioni.

Aggiorna VirtualBox

Prima, le VM VirtualBox non venivano eseguite quando Hypervision (Hyper-V) era attivo. Quindi era impossibile utilizzare VirtualBox insieme a qualsiasi applicazione che necessitasse di Hyper-V, come Docker.

Tuttavia, VirtualBox 6 ha introdotto il supporto sperimentale per Hyper-V. Quindi, aggiorna VirtualBox all’ultima versione per evitare questo problema.

Riavvia l’hypervisor

Se utilizzi già VirtualBox v6+, è possibile che Hypervisor non funzioni correttamente. Il ripristino della configurazione del tipo di avvio dovrebbe risolvere questo problema. Ecco come puoi farlo:

  1. Apri il comando Esegui.
  2. Digita cmd e premi Ctrl + Maiusc + Invio. Caricherà il prompt dei comandi con privilegi elevati.
  3. Digita il seguente comando e premi Invio per eseguirlo:
    bcdedit /set hypervisorlaunchtype off
  4. Se hai più di un sistema operativo, usa il comando
    bcdedit /set {current} hypervisorlaunchtype off
  5. Riavvia il PC.
  6. Apri di nuovo il prompt dei comandi con privilegi elevati e inserisci:
    bcdedit /set hypervisorlaunchtype auto

Riavvia il computer e apri di nuovo la macchina virtuale.

Disabilita i processi dell’hypervisor

Come accennato in precedenza, le versioni precedenti e inclusa VirtualBox 5.x non supportano l’esecuzione di VM con Hypervision attivo. Hyper-V assorbe gran parte delle risorse di virtualizzazione e impedisce a VirtualBox di avviare una VM.

Quindi, devi disabilitare tutti i processi Hypervision per correggere questo errore in quelle build di VirtualBox. Fare così,

  1. Apri la finestra di dialogo Esegui e inserisci optionalfeatures . Ti indirizzerà alla procedura guidata di attivazione o disattivazione delle funzionalità di Windows.
  2. Cerca e deseleziona le seguenti opzioni:
    • Hyper-V
    • Contenitori
    • Piattaforma Windows Hypervision
    • Sottosistema Windows per Linux
  3. Chiudere la procedura guidata e aprire il prompt dei comandi con privilegi elevati.
  4. Immettere il seguente comando: bcdedit /set hypervisorlaunchtype off

Riavvia il PC e controlla se l’errore persiste.

Disabilita Device Guard o Credential Guard

Device Guard e Credential Guard utilizzano la tecnologia di virtualizzazione per proteggere il sistema e le credenziali da danni esterni. Pertanto, l’abilitazione di questa funzione eliminerà anche le risorse di virtualizzazione e causerà questo errore.

È possibile utilizzare uno dei seguenti metodi per disabilitare questa funzione:

Tramite il prompt dei comandi:

Apri il prompt dei comandi con privilegi elevati e inserisci i seguenti comandi:

 mountvol X: /scopy %WINDIR%System32SecConfig.efi X:EFIMicrosoftBootSecConfig.efi /Ybcdedit /create {0cb3b571-2f2e-4343-a879-d86a476d7215} /d "DebugTool" /application osloaderbcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} path "EFIMicrosoftBootSecConfig.efi"bcdedit /set {bootmgr} bootsequence {0cb3b571-2f2e-4343-a879-d86a476d7215}bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} loadoptions DISABLE-LSA-ISObcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} device partition=X:mountvol X: /d

Nota: sostituire X con un’unità inutilizzata.

Tramite lo strumento di preparazione hardware Device Guard e Credential Guard:

  1. Scarica lo strumento di preparazione hardware di Device Guard e Credential Guard.
  2. Apri PowerShell come amministratore e vai alla posizione del file scaricato.
  3. Immettere il comando DG_Readiness_Tool_v3.6.ps1 -Disable -AutoReboot durante la sostituzione di v3.6 con la versione dello strumento di prontezza.

Disabilita l’integrità della memoria

Analogamente al caso precedente, Memory Integrity utilizza la virtualizzazione per isolare i processi proteggendo il sistema principale dalle minacce esterne. È necessario disabilitare anche questa opzione se si verifica l’errore E_FAIL (0x80004005).

Puoi farlo seguendo uno dei modi indicati di seguito:

Tramite Impostazioni:

  1. Premi Win + I per avviare Impostazioni .
  2. Vai su Aggiornamento e sicurezza > Sicurezza di Windows > Sicurezza dispositivo .
  3. Fai clic su Dettagli isolamento core .
  4. Disattiva Integrità della memoria .

Tramite l’Editor criteri di gruppo:

  1. Immettere gpedit.msc nel comando Esegui.
  2. Passare attraverso: Configurazione computer > Modelli amministrativi > Sistema > Device Guard .
  3. Cerca e fai doppio clic su Attiva sicurezza basata sulla virtualizzazione .
  4. Seleziona Disabilitato e fai clic su OK .

Se usi la Home Edition di Windows, ecco come abilitare Gpedit sul tuo computer.

Codice risultato: E_FAIL (0x80004005) a causa di valori di configurazione duplicati

In questo caso, verrà visualizzato il messaggio “Valori di configurazione duplicati’/CPUM/CMPXCHG16B’ e ‘/CPUM/IsaExts/CMPXCHG16B’ – rimuovere il primo! “. Proprio come dice il messaggio, è necessario rimuovere la precedente istruzione dal file vbox della macchina virtuale. Per farlo su Windows,

  1. Apri il prompt dei comandi con privilegi elevati.
  2. Immettere i seguenti comandi:
    • cd “%systemdrive%Program FilesOracleVirtualBox”
    • VBoxManage.exe list vms
  3. Cerca il nome della macchina VBOX in cui hai ricevuto l’errore E_FAIL (0x80004005).
  4. Immettere il comando: VBoxManage.exe setextradata “VBOX Machine” VBoxInternal/CPUM/CMPXCHG16B sostituendo “VBOX Machine” con il nome del passaggio precedente.
  5. Apri VirtualBox e avvia nuovamente la VM e controlla se l’errore persiste.
  6. Se l’errore si ripresenta, chiudi il VirtualBox, vai al prompt dei comandi e digita: VBoxManage.exe setextradata global VBoxInternal/CPUM/CMPXCHG16B

Altre soluzioni per il codice risultato: E_FAIL (0x80004005)

Mentre le sezioni precedenti riguardano la risoluzione dei problemi più comuni per questo errore, ci sono ancora alcuni casi in cui questi metodi sono inefficaci. Ecco alcune soluzioni aggiuntive applicabili in tali circostanze.

Eseguire manualmente il processo

Se l’apertura della VM o il montaggio di un file iso tramite VirtualBox causa l’errore, puoi tentare di eseguire manualmente questi processi.

Vai alla cartella VM in Esplora file e apri il programma per il primo caso. Allo stesso modo, invece di montare il file con VirtualBox, usa la funzione di montaggio nel tuo sistema operativo per montarlo su un disco virtuale.

Elimina la sessione o l’istantanea

Gli aggiornamenti di VirtualBox o gli arresti impropri possono danneggiare gli stati di salvataggio e le istantanee della VM. È necessario eliminare lo stato di salvataggio o il ramo dell’albero dell’istantanea per risolvere questo problema.

Disabilita/disinstalla parti che interferiscono

Ci sono molti casi di altri processi che interferiscono con VirtualBox. Il registro di protezione avanzata di VirtualBox creato dopo aver riscontrato questo errore dovrebbe contenere informazioni aggiuntive sulle parti responsabili. Puoi controllare il registro o chiedere aiuto al personale del supporto tecnico di VirtualBox per diagnosticare questo problema.

I programmi di terze parti più comuni responsabili di ciò includono IBM Security Trusteer Rapport e Cyclance Protect. È noto che anche molti programmi antivirus di terze parti causano questo problema. Quindi, assicurati di disabilitare o disinstallare questi programmi.

Alcuni utenti hanno anche affermato di aver sofferto di questo errore dopo aver eseguito Driver Verifier . Per disabilitare questa funzione, avvia il prompt dei comandi come amministratore e inserisci:
verifier /reset

Reinstalla all’ultima versione

Alcune delle vecchie versioni di VirtualBox avevano molti bug. Pertanto, ti consigliamo di eseguire l’aggiornamento all’ultima edizione il prima possibile. È meglio disinstallare la vecchia versione e installare la build più recente utilizzando il suo programma di installazione. Ecco i passaggi per questo processo:

Su Windows:

  1. Scarica l’ultimo VirtualBox insieme al corrispondente ExtPack.
  2. Disinstalla l’antivirus di terze parti se non l’hai già fatto.
  3. Vai su Pannello di controllo > Programmi e funzionalità > Disinstalla un programma e disinstalla l’applicazione VirtualBox.
  4. Vai al file di installazione dal passaggio 1.
  5. Fai clic destro e seleziona Esegui come amministratore .
  6. Segui le istruzioni sullo schermo.
  7. Nell’ultima pagina di installazione, selezionare Avvia Oracle VM VirtualBox…dopo l’installazione e fare clic su Fine .
  8. Sul VirtualBox, seleziona File > Preferences > Extensions .
  9. Fare clic sull’icona con una freccia arancione rivolta verso il basso e selezionare ExtPack.

Su Linux:

Apri il terminale e inserisci i seguenti comandi:

 sudo apt-get updatesudo apt-get purge virtualboxsudo apt-get purge virtualbox-ext-packsudo apt-get install virtualboxsudo apt-get install virtualbox-ext-pack

Riavvia VirtualBox e verifica se riscontri l’errore 0x80004005.

Rollback alla vecchia versione

Le ultime versioni di VirtualBox non supportano più i vecchi sistemi operativi come Windows 7. In questi casi dovrai eseguire il rollback a una versione precedente di VirtualBox. Controlla quale versione funziona e scarica il suo programma di installazione. Quindi installalo seguendo i passaggi del metodo sopra.

È anche possibile che le ultime versioni contengano alcuni bug irrisolti. Dovresti eseguire il rollback all’ultima versione stabile fino a quando non viene visualizzato un nuovo aggiornamento in questi casi.

Reimposta gli adattatori di rete

È noto che alcuni problemi minori con gli adattatori di rete VM causano anche questo errore. Succede principalmente dopo un aggiornamento. È necessario reimpostare la scheda di rete per risolvere questo problema. Fare così,

  1. Seleziona la tua VM e fai clic su Settings .
  2. Vai su Rete e deseleziona Abilita adattatore di rete .
  3. Avviare la VM mentre la scheda di rete è disabilitata.
  4. Chiudere correttamente la VM e abilitare nuovamente la scheda di rete.

Ora avvia nuovamente la VM e controlla se l’errore si ripresenta.

Puoi anche inserire i seguenti comandi in PowerShell per reimpostare gli adattatori di rete per VirtualBox:
disable-netadapter -InterfaceDescription "VirtualBox*" -confirm:$false
enable-netadapter -InterfaceDescription "VirtualBox*" -confirm:$false

Installa il driver VirtualBox

VirtualBox utilizza VBoxDrv.inf come driver. Dovrebbe installarsi automaticamente sul tuo sistema durante l’installazione di VirtualBox. Tuttavia, è noto che il processo di installazione non riesce in alcuni casi.

È necessario installarlo manualmente per risolvere il problema. Ecco come puoi farlo:

  1. Vai alla cartella del programma di installazione del driver.
  2. Nell’installazione predefinita su Windows, dovrebbe essere in:
    C:Program FilesOracleVirtualBoxdriversvboxdrv
  3. Fare clic con il tasto destro su VBocDrv.inf e selezionare Installa.

Aggiorna i driver grafici

Questo errore può verificarsi anche se l’applicazione tenta di accedere a un indirizzo di memoria non valido. Si verifica principalmente a causa di una DLL relativa alla grafica. Aggiorna il driver della tua scheda grafica per risolvere questo problema. Segui i passaggi seguenti per farlo,

  1. Immettere devmgmt.msc nel comando Esegui.
  2. Espandi Schede video e fai clic con il pulsante destro del mouse sul dispositivo grafico.
  3. Selezionare Aggiorna driver.
  4. Fare clic su Cerca automaticamente i driver.

Riavvia il PC.

Se il tuo driver grafico è completamente aggiornato, puoi disinstallarlo e riavviare il sistema per reinstallare il driver. Risolverà eventuali errori minori presenti nel driver.

Riparare la corruzione del sistema

I file DLL mancanti o corrotti sono responsabili di numerosi errori di sistema e dell’applicazione. Se riscontri l’errore E_FAIL (0x80004005), vale la pena eseguire il Controllo file di sistema per riparare i file DLL.