Skip to content

[Actualizado el 30 de septiembre de 2026]

¿Lo quiere con Hyper-V?

En CMD como administrador lanzar el bat dualboot.bat.

Contenido del archivo dualboot.bat:

@echo off
:: Comprobar si se ejecuta como administrador
net session >nul 2>&1
if %errorLevel% neq 0 (
    echo [ERROR] Este script debe ejecutarse como Administrador.
    echo Haz clic derecho sobre el archivo y selecciona "Ejecutar como administrador".
    pause
    exit /b
)

echo =======================================================
echo   CONFIGURANDO MENU DE ARRANQUE PARA EL AULA
echo =======================================================
echo.

:: 1. Renombrar la entrada de arranque actual a "Windows (Con Hyper-V)"
echo [1/5] Renombrando la entrada actual...
bcdedit /set {current} description "Windows (Con Hyper-V)" >nul

:: 2. Crear la copia y capturar el GUID generado en una variable
echo [2/5] Creando entrada para VirtualBox sin Hyper-V...
for /f "tokens=2 delims={}" %%g in ('bcdedit /copy {current} /d "Windows (Sin Hyper-V)"') do (
    set GUID={%%g}
)

if not defined GUID (
    echo [ERROR] No se pudo obtener el GUID de la nueva entrada.
    pause
    exit /b
)

echo     - Identificador creado: %GUID%

:: 3. Desactivar el hipervisor solo en la nueva entrada
echo [3/5] Desactivando Hyper-V en la nueva entrada...
bcdedit /set %GUID% hypervisorlaunchtype off >nul

:: 4. Estipular "Windows (Sin Hyper-V)" como la opción POR DEFECTO
echo [4/5] Estableciendo "Windows (Sin Hyper-V)" como arranque predeterminado...
bcdedit /default %GUID% >nul

:: 5. Estipular un tiempo de espera para el menú (10 segundos)
echo [5/5] Configurando el tiempo de espera del menú a 10 segundos...
bcdedit /timeout 10 >nul

echo.
echo =======================================================
echo   PROCESO COMPLETADO CON EXITO
echo =======================================================
echo  Opcion predeterminada: Windows (Sin Hyper-V) [VirtualBox]
echo.
echo  Menu de inicio configurado a 10 segundos.
echo =======================================================
echo.
pause