Trying to save some space on my NAS. I'd like to make some SVF's of my Windows ISO's with the en-US being the reference image but I just can't figure this out. Maybe I'm getting old, been in this game since the early 80's with the C64 LOL. Can someone please let me know the best way to do this? If there is a batch way so I don't have to do them one by one, that would be preferable. I basically need step by step and what tools to use. TIA
I always use this script provided by @GezoeSloog Code: :: drag and drop a Source file onto this batch @echo off set SmvExec=e:\Win_10_AiO\Releases\smv.exe set OutDir=.\EN2XX-SVF :: max number of SMVs to run simultaneously set RunInst=1 cd /d "%~dp0" if not exist "%OutDir%" md "%OutDir%" if %RunInst% gtr 1 set _nowait=start "" /b call :_StrFind "%~n1" ISO for /f "usebackq delims=" %%i in (`dir "%~dp1*%_filter%*%~x1" /b /a:-d`) do ( if "%%~i" neq "%~nx1" if not exist "%OutDir%\%%~ni.svf" ( if %RunInst% gtr 1 call :_ProcWait smv.exe %RunInst% %_nowait% "%SmvExec%" BuildPatch "%OutDir%\%%~ni.svf" "%~1" "%~dp1%%~i" -nbhashbits 24 -compressratio 192 -sha1 -nomd5 echo. ) ) exit :_StrFind echo %~1 | find /i "%~2" >nul if %ErrorLevel% neq 0 ( shift /2 if "%~2" neq "" goto _StrFind ) set _filter=%~2 exit /b :_ProcWait for /f %%i in ('tasklist /fi "ImageName eq %~1" ^| find /i /c "%~1"') do ( if %%i geq %2 ( timeout /t 1 /nobreak >nul goto _ProcWait ) ) exit /b Just modify the path to your smv.exe and drag and drop de source ISO on it with the desired target ISOs next to it. Most SVF patches won't be very small, because when the ISOs are very different, the patches will increase in size.
Thank you @Enthousiast, you are very helpful as always. I will try the script after work tomorrow. I will match build numbers and architecture to make the smallest files possible. Thanks again!