@Echo off
SET VMNAME=
WIN7_UATT
SET OSTYPE=
Windows7
SET IMAGEARCH=
X64
SET ISOPATH=
D:\ISO-ARCHIV\Windows7
SET ISONAME=
Win7_DE_AIO_x64_WIM_2022-11-11
SET USER=XXXX
SET FULLNAME=XXXX
SET PASSWORD=XXXX
SET INDEX=3
SET LOCALE=de_DE
SET FORMAT=VHD
SET KEY=XXXXX-XXXXX-XXXXX-XXXXX
SET RAM32=2048
SET RAM64=4096
SET VRAM=128
SET SIZE=30000
SET VMDIR=
V:
SET VMPATH=VIRTUALBOX\%VMNAME%
SET UATT=
ultimate-uatt
SET POSTINST=
REM Set host architecture
if exist "%WinDir%\SysWOW64" (
set ARCH=x64
) else (
set ARCH=x86
)
if exist "%ProgramFiles%\Oracle\VirtualBox\VBoxManage.exe" set "VBOXMANAGE=%ProgramFiles%\Oracle\VirtualBox\VBoxManage.exe"
if exist "%ProgramFiles(x86)%\Oracle\VirtualBox\VBoxManage.exe" set "VBOXMANAGE=%ProgramFiles(x86)%\Oracle\VirtualBox\VBoxManager.exe"
if not exist "%VBOXMANAGE%" (
echo.
echo VirtualBox is not installed, please download and install it
start
https://www.virtualbox.org/wiki/Downloads
echo.
pause
goto :EOF
)
rem alte VM löschen
"%VBOXMANAGE%" controlvm "%VMNAME%" poweroff >nul 2>nul
"%VBOXMANAGE%" unregistervm --delete "%VMNAME%" >nul 2>nul
rmdir "%VMDIR%\%VMPATH%"\ /s /q >nul 2>nul
del /q /s "%VMDIR%\$Recycle.bin\*"
for /d %%x in ("%VMDIR%\$Recycle.bin\*") do @rd /s /q "%%x"
rem neue VM erstellen
if /i "%ImageArch%" == "X86" (
"%VBOXMANAGE%" createvm --name "%VMNAME%" --ostype "%OSTYPE%" --default --register >nul 2>nul
) else (
"%VBOXMANAGE%" createvm --name "%VMNAME%" --ostype "%OSTYPE%_64" --default --register >nul 2>nul
)
REM Use different minimal amount for x64 systems. Best to keep it really on minimum requirements for capturing images
if /i "%ImageArch%" == "x86" (
"%VBOXMANAGE%" modifyvm "%VMNAME%" --memory "%RAM32%" --vram "%VRAM%" >nul 2>nul
) else (
"%VBOXMANAGE%" modifyvm "%VMNAME%" --memory "%RAM64%" --vram "%VRAM%" >nul 2>nul
)
"%VBOXMANAGE%" unattended detect --iso="%ISOPATH%\%ISONAME%".iso
"%VBOXMANAGE%" unattended install "%VMNAME%" --iso="%ISOPATH%\%ISONAME%".iso --image-index="%INDEX%" --script-template="%UATT%".xml --locale="%LOCALE%"
"%VBOXMANAGE%" createmedium disk --filename "%VMDIR%\%VMPATH%\%VMNAME%" --size %SIZE% --format %FORMAT%
"%VBOXMANAGE%" storageattach "%VMNAME%" --storagectl "SATA" --port 0 --device 0 --type hdd --medium "%VMDIR%\%VMPATH%\%VMNAME%.vhd"
"%VBOXMANAGE%" storageattach "%VMNAME%" --storagectl "SATA" --port 1 --device 0 --type dvddrive --medium "%ISOPATH%\%ISONAME%.iso"
"%VBOXMANAGE%" modifyvm "%VMNAME%" --cpus 2 --vram=%VRAM%
"%VBOXMANAGE%" startvm "%VMNAME%"
exit