We appreciate the contributions many of you have been able to make towards repairing the storm damage and keeping a roof over our heads. With your help we’ve been able to complete much of the critical work. There is still work to be done to secure the house and your continued support will be a huge help.
Guests have read-only access to our forums. If you wish to participate you will need to register. Be sure to activate your account from the email sent to you when you register.
The driverpack cleanup batch file wrongfully attempts to delete DP_Sounds_Realtek_22035.7z, even though this driverpack is up to date (included in the latest driverpack torrent.)
I'm no expert, but it looks like it's confusing DP_Sounds_Realtek_DCH_22043.7z as a newer version when the DCH and non-DCH should be seen as separate and unrelated packs.
You are totally correct and thanks for bringing that to my attention. The DCH file is new this release and I missed it. I've updated the batch file to better support the new variation.
Here's the new version (watch out for extraneous code tags, they are the backticks):
@echo off echo Snappy Driver Installer Origin echo Driver Pack Cleanup echo by Computer Bloke echo. @setlocal enableextensions @cd /d "%~dp0/drivers" attrib *.* -R rem out of date driver packs for /f "tokens=1,2,3,4,5,6,7 delims=_. usebackq" %%i in (dir /b *.7z) do call :cleanup %%i %%j %%k %%l %%m %%n %%o rem redundant driver packs del DP_Sound_ADI_*.7z 2> nul cd .. goto :end :cleanup if /i "%7"=="7z" call :clean7 %1 %2 %3 %4 %5 %6 && goto :eof if /i "%6"=="7z" call :clean6 %1 %2 %3 %4 %5 && goto :eof if /i "%5"=="7z" call :clean5 %1 %2 %3 %4 && goto :eof if /i "%4"=="7z" call :clean4 %1 %2 %3 && goto :eof if /i "%3"=="7z" call :clean3 %1 %2 && goto :eof goto :eof :clean7 for /f "tokens=* usebackq" %%f in (dir /b /on "%1_%2_%3_%4_%5_?????.7z") do set "GOODFILE=%%f" echo Keeping most recent driver file: %GOODFILE% for %%f in (%1_%2_%3_%4_%5_?????.7z) do if not "%%f"=="%GOODFILE%" echo "%%f" & del "%%f" goto :eof :clean6 for /f "tokens=* usebackq" %%f in (dir /b /on "%1_%2_%3_%4_?????.7z") do set "GOODFILE=%%f" echo Keeping most recent driver file: %GOODFILE% for %%f in (%1_%2_%3_%4_?????.7z) do if not "%%f"=="%GOODFILE%" echo "%%f" & del "%%f" goto :eof :clean5 for /f "tokens=* usebackq" %%f in (dir /b /on "%1_%2_%3_?????.7z") do set "GOODFILE=%%f" echo Keeping most recent driver file: %GOODFILE% for %%f in (%1_%2_%3_?????.7z) do if not "%%f"=="%GOODFILE%" echo "%%f" & del "%%f" goto :eof :clean4 for /f "tokens=* usebackq" %%f in (dir /b /on "%1_%2_?????.7z") do set "GOODFILE=%%f" echo Keeping most recent driver file: %GOODFILE% for %%f in (%1_%2_?????.7z) do if not "%%f"=="%GOODFILE%" echo "%%f" & del "%%f" goto :eof :clean3 for /f "tokens=* usebackq" %%f in (dir /b /on "%1_?????.7z") do set "GOODFILE=%%f" echo Keeping most recent driver file: %GOODFILE% for %%f in (%1_?????.7z) do if not "%%f"=="%GOODFILE%" echo "%%f" & del "%%f" goto :eof :end
Thank You!
I use such a file DelOldDP.bat found on the web and everything works, even with the latest packs from Samlab
@echo off
setlocal enableextensions
for %%a in ("%~dp0driversDP_*.7z") do call :ProcessDP "%%~na"
goto :eof
:ProcessDP
call :GetPrefSuff %1
if "%Pref%"=="" goto :eof
if "%Suff%"=="" goto :eof
for %%b in ("%~dp0drivers%Pref%*.7z") do call :DelIfOld "%%~nb" "%Pref%" "%Suff%"
goto :eof
:DelIfOld
call :GetPrefSuff %1
if "%Pref%"=="" goto :eof
if "%Suff%"=="" goto :eof
if %~3 LEQ %Suff% goto :eof
echo Deleting old DP - "%Pref%%Suff%.7z"
del /f /q "%~dp0drivers%Pref%%Suff%.7z"
goto :eof
:GetPrefSuff
set Suff=
set Pref=%~1
call :PrefixRec
goto :eof
:PrefixRec
set LastCh=%Pref:~-1%
if "%LastCh%"=="" goto :eof
if "%LastCh%"=="_" goto :eof
set Suff=%LastCh%%Suff%
set Pref=%Pref:~0,-1%
call :PrefixRec
goto :eof