I have scripted CacheLimit.bat to allow you to set the Internet Explorer Temporary Internet Files cache size from a command line, including from a logon script.

The syntax for using CacheLimit.bat is:

call cachelimit NumberOfMegaBytes

where NumberOfMegaBytes is the cache size in megabytes.

NOTE: CacheLimit.bat calls Dec2Hex.

NOTE: After calling CacheLimit.bat, the Temporary Internet Files cache size that you set will be used the next time that Internet Explorer is started.

CacheLimit.bat contains:

@echo off                              setlocal                              if \{%1\}==\{\} goto syntax                              set /a MB=%1                              set /a KB=%MB% * 1024                              :: Delete the above line if you wish to set the cache in kilobytes.                              set work=00000000                              call Dec2Hex %KB% HexKB HexChar                              if %HexChar% EQU 0 goto Syntax                              if %HexChar% EQU 8 set Cache=%HexKB%&goto out                              set /a FillChar=8 - %HexChar%                              call set Cache=%%work:~0^,%FillChar%%%%HexKB%                              :out                              set file=%TEMP%\CacheLimit.reg                              @echo REGEDIT4>%file%                              @echo.>>%file%                              @echo \[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\Cache\Content\]>>%file%                              @echo "CacheLimit"=dword:%Cache%>>%file%                              @echo.>>%file%                              @echo \[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Cache\Content\]>>%file%                              @echo "CacheLimit"=dword:%Cache%>>%file%                              @echo.>>%file%                              regedit /s %file%                              del /q %file%                              endlocal                              goto :EOF                              :syntax                              @echo Syntax:  Call CacheLimit NumberOfMegaBytes                              endlocal