blob: 2e975b92c1759af975a63bdd02504fea757771d7 [file] [log] [blame]
rem @echo off
cls
set UTILITIES=C:\Sysprep\Utilities
set VCL_SCRIPTS=C:\Documents and Settings\root\Application Data\VCL
set WINDOWS_SCRIPTS=%SystemRoot%\System32\GroupPolicy\User\Scripts
set DOCS=%SystemDrive%\Documents and Settings
:VCL_SCRIPTS
echo Removing old VCL scripts...
rem Delete and recreate the root/AppData/VCL directory to make sure it's clean
if exist "%VCL_SCRIPTS%" rmdir /s /q "%VCL_SCRIPTS%"
mkdir "%VCL_SCRIPTS%"
rem Clear out any old files in the GroupPolicy\User\Scripts directories
if exist "%WINDOWS_SCRIPTS%\Logon\VCLprepare.cmd" del /A /S /Q /F "%WINDOWS_SCRIPTS%\Logon\VCLprepare.cmd"
if exist "%WINDOWS_SCRIPTS%\Logoff\VCLcleanup.cmd" del /A /S /Q /F "%WINDOWS_SCRIPTS%\Logoff\VCLcleanup.cmd"
echo.
echo Copying new VCL scripts...
copy /y "C:\Sysprep\Scripts\*.*" "%VCL_SCRIPTS%\"
copy /y "%VCL_SCRIPTS%\VCLprepare.cmd" "%WINDOWS_SCRIPTS%\Logon\"
echo.
:CLEAN
set DELETE=%TEMP%
echo Removing files and subdirectories in %DELETE%...
FOR /F "usebackq delims==" %%x IN (`dir /b /a:d "%DELETE%\*"`) DO rmdir /S /Q "%DELETE%\%%x"
FOR /F "usebackq delims==" %%x IN (`dir /b /a:-d "%DELETE%\*"`) DO del /A /S /Q /F "%DELETE%\%%x"
echo.
set DELETE=%TMP%
echo Removing files and subdirectories in %DELETE%...
FOR /F "usebackq delims==" %%x IN (`dir /b /a:d "%DELETE%\*"`) DO rmdir /S /Q "%DELETE%\%%x"
FOR /F "usebackq delims==" %%x IN (`dir /b /a:-d "%DELETE%\*"`) DO del /A /S /Q /F "%DELETE%\%%x"
echo.
set DELETE=%SystemRoot%\Temp
echo Removing files and subdirectories in %DELETE%...
FOR /F "usebackq delims==" %%x IN (`dir /b /a:d "%DELETE%\*"`) DO rmdir /S /Q "%DELETE%\%%x"
FOR /F "usebackq delims==" %%x IN (`dir /b /a:-d "%DELETE%\*"`) DO del /A /S /Q /F "%DELETE%\%%x"
echo.
echo Removing "%SystemRoot%\*.tmp" files...
del /A /S /Q /F "%SystemRoot%\*.tmp"
echo.
set DELETE=%SystemRoot%\SoftwareDistribution\Download
echo Removing files and subdirectories in %DELETE%...
FOR /F "usebackq delims==" %%x IN (`dir /b /a:d "%DELETE%\*"`) DO rmdir /S /Q "%DELETE%\%%x"
FOR /F "usebackq delims==" %%x IN (`dir /b /a:-d "%DELETE%\*"`) DO del /A /S /Q /F "%DELETE%\%%x"
echo.
rem Minidump files are created if an application crashes, used for debugging
set DELETE=%SystemRoot%\Minidump
echo Removing files and subdirectories in %DELETE%...
FOR /F "usebackq delims==" %%x IN (`dir /b /a:d "%DELETE%\*"`) DO rmdir /S /Q "%DELETE%\%%x"
FOR /F "usebackq delims==" %%x IN (`dir /b /a:-d "%DELETE%\*"`) DO del /A /S /Q /F "%DELETE%\%%x"
echo.
rem $NtUninstall...$ are uninstall files for Windows updates
set DELETE=%SystemRoot%\$NtUninstall
echo Removing files and subdirectories in %DELETE%...
FOR /F "usebackq delims==" %%x IN (`dir /b "%DELETE%*"`) DO rmdir /S /Q "%SystemRoot%\%%x"
echo.
rem $NtServicePackUninstall...$ are uninstall files for Windows service packs
set DELETE=%SystemRoot%\$NtServicePackUninstall
echo Removing files and subdirectories in %DELETE%...
FOR /F "usebackq delims==" %%x IN (`dir /b "%DELETE%*"`) DO rmdir /S /Q "%SystemRoot%\%%x"
echo.
rem $MSI*Uninstall...$ are uninstall files for Windows Installer service updates (msiexec.exe)
set DELETE=%SystemRoot%\$MSI*Uninstall
echo Removing files and subdirectories in %DELETE%...
FOR /F "usebackq delims==" %%x IN (`dir /b "%DELETE%*"`) DO rmdir /S /Q "%SystemRoot%\%%x"
echo.
rem Dr Watson logs and memory dumps
set DELETE=%ALLUSERSPROFILE%\Application Data\Microsoft\Dr Watson
echo Removing directory %DELETE%...
if exist "%DELETE%" rmdir /S /Q "%DELETE%"
echo.
rem Page file should be disabled, try to delete it again
set DELETE=%SystemDrive%\pagefile.sys
echo Removing file %DELETE%...
if exist "%DELETE%" del /A /S /Q /F "%DELETE%"
echo.
rem inf\oem* and infcache.1 files are cached OEM drivers, removal suggested by vernalex.com
echo Removing cached OEM drivers at "%SystemRoot%\inf\oem*.*"...
del /A /S /Q /F "%SystemRoot%\inf\oem*.*"
del /A /S /Q /F "%SystemRoot%\inf\infcache.1"
echo.
echo Emptying Recycle Bin...
"%UTILITIES%\EmptyRecycleBin.exe" /q
echo.
:PROFILES
echo Cleaning up user profiles...
set DELETE=Cookies
FOR /F "usebackq delims==" %%u IN (`dir /b /a:d "%DOCS%\*"`) DO if exist "%DOCS%\%%u\%DELETE%" FOR /F "usebackq delims==" %%x IN (`dir /b /a:d "%DOCS%\%%u\%DELETE%\*"`) DO if exist "%DOCS%\%%u\%DELETE%\%%x" rmdir /S /Q "%DOCS%\%%u\%DELETE%\%%x"
FOR /F "usebackq delims==" %%u IN (`dir /b /a:d "%DOCS%\*"`) DO if exist "%DOCS%\%%u\%DELETE%" FOR /F "usebackq delims==" %%x IN (`dir /b /a:-d "%DOCS%\%%u\%DELETE%\*"`) DO if exist "%DOCS%\%%u\%DELETE%\%%x" del /A /S /Q /F "%DOCS%\%%u\%DELETE%\%%x"
set DELETE=Local Settings\Temp
FOR /F "usebackq delims==" %%u IN (`dir /b /a:d "%DOCS%\*"`) DO if exist "%DOCS%\%%u\%DELETE%" FOR /F "usebackq delims==" %%x IN (`dir /b /a:d "%DOCS%\%%u\%DELETE%\*"`) DO if exist "%DOCS%\%%u\%DELETE%\%%x" rmdir /S /Q "%DOCS%\%%u\%DELETE%\%%x"
FOR /F "usebackq delims==" %%u IN (`dir /b /a:d "%DOCS%\*"`) DO if exist "%DOCS%\%%u\%DELETE%" FOR /F "usebackq delims==" %%x IN (`dir /b /a:-d "%DOCS%\%%u\%DELETE%\*"`) DO if exist "%DOCS%\%%u\%DELETE%\%%x" del /A /S /Q /F "%DOCS%\%%u\%DELETE%\%%x"
set DELETE=Recent
FOR /F "usebackq delims==" %%u IN (`dir /b /a:d "%DOCS%\*"`) DO if exist "%DOCS%\%%u\%DELETE%" FOR /F "usebackq delims==" %%x IN (`dir /b /a:d "%DOCS%\%%u\%DELETE%\*"`) DO if exist "%DOCS%\%%u\%DELETE%\%%x" rmdir /S /Q "%DOCS%\%%u\%DELETE%\%%x"
FOR /F "usebackq delims==" %%u IN (`dir /b /a:d "%DOCS%\*"`) DO if exist "%DOCS%\%%u\%DELETE%" FOR /F "usebackq delims==" %%x IN (`dir /b /a:-d "%DOCS%\%%u\%DELETE%\*"`) DO if exist "%DOCS%\%%u\%DELETE%\%%x" del /A /S /Q /F "%DOCS%\%%u\%DELETE%\%%x"
set DELETE=Local Settings\Recent
FOR /F "usebackq delims==" %%u IN (`dir /b /a:d "%DOCS%\*"`) DO if exist "%DOCS%\%%u\%DELETE%" FOR /F "usebackq delims==" %%x IN (`dir /b /a:d "%DOCS%\%%u\%DELETE%\*"`) DO if exist "%DOCS%\%%u\%DELETE%\%%x" rmdir /S /Q "%DOCS%\%%u\%DELETE%\%%x"
FOR /F "usebackq delims==" %%u IN (`dir /b /a:d "%DOCS%\*"`) DO if exist "%DOCS%\%%u\%DELETE%" FOR /F "usebackq delims==" %%x IN (`dir /b /a:-d "%DOCS%\%%u\%DELETE%\*"`) DO if exist "%DOCS%\%%u\%DELETE%\%%x" del /A /S /Q /F "%DOCS%\%%u\%DELETE%\%%x"
set DELETE=Local Settings\Temporary Internet Files
FOR /F "usebackq delims==" %%u IN (`dir /b /a:d "%DOCS%\*"`) DO if exist "%DOCS%\%%u\%DELETE%" FOR /F "usebackq delims==" %%x IN (`dir /b /a:d "%DOCS%\%%u\%DELETE%\*"`) DO if exist "%DOCS%\%%u\%DELETE%\%%x" rmdir /S /Q "%DOCS%\%%u\%DELETE%\%%x"
FOR /F "usebackq delims==" %%u IN (`dir /b /a:d "%DOCS%\*"`) DO if exist "%DOCS%\%%u\%DELETE%" FOR /F "usebackq delims==" %%x IN (`dir /b /a:-d "%DOCS%\%%u\%DELETE%\*"`) DO if exist "%DOCS%\%%u\%DELETE%\%%x" del /A /S /Q /F "%DOCS%\%%u\%DELETE%\%%x"
:AFS
echo Stopping AFS client service...
sc stop TransarcAFSDaemon
echo Removing AFSCache and afsd_init.log files
del /A /S /Q /F "%SystemRoot%\AFSCache"
del /A /S /Q /F "%SystemRoot%\afsd_init.log"
echo.
:DRIVERS
echo Scanning drivers...
"%UTILITIES%\spdrvscn.exe" /p "C:\Sysprep\Drivers" /e inf /f /a /s /q
echo.
:EVENTLOG
echo Clearing the event logs...
"%UTILITIES%\PsTools\psloglist.exe" -accepteula -o null -c Application
"%UTILITIES%\PsTools\psloglist.exe" -accepteula -o null -c "Internet Explorer"
"%UTILITIES%\PsTools\psloglist.exe" -accepteula -o null -c Security
"%UTILITIES%\PsTools\psloglist.exe" -accepteula -o null -c System
:SYSPREP
echo Starting Sysprep...
"C:\Sysprep\sysprep.exe" -quiet -reboot -reseal -mini -activated
echo.
:END
echo Done.