Monday, February 06, 2012
   
Text Size

XP - Change IE History Location

strRegURLHistory = "SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\URL History"
HKEY_CURRENT_USER = &H80000001
strCacheLimit = 512000

strHistoryFolder = "c:\Winnt\IE\History"
strTempIntFilesFolder = "c:\winnt\IE\TempInt"

Call UsersID()
Call Check_Folder_Structure()
Call Set_History_Retention()
Call Set_IE_Temp_Files_Folder()
Call Set_Temp_Disk_Space()
Call Set_History_Folder()

MSGBOX ("COMPLETE")

Sub UsersID()
 Do While UserID = ""
  UserID = WshNetwork.UserName
 Loop
End Sub 

Sub Check_Folder_Structure()
 If FSO.FolderExists ("c:\winnt\IE") Then
 Else
  FSO.CreateFolder ("c:\winnt\IE")
 End If

 If FSO.FolderExists ("c:\winnt\IE\History") Then
 Else
  FSO.CreateFolder ("c:\winnt\IE\History")
 End If

 If FSO.FolderExists ("c:\winnt\IE\History\" & USERID) Then
 Else
  FSO.CreateFolder ("c:\winnt\IE\History\" & USERID)
 End If

 If FSO.FolderExists ("c:\winnt\IE\TempInt") Then
 Else
  FSO.CreateFolder ("c:\winnt\IE\TempInt")
 End If

 If FSO.FolderExists ("c:\winnt\IE\TempInt\" & USERID) Then
 Else
  FSO.CreateFolder ("c:\winnt\IE\TempInt\" & USERID)
 End If
End Sub

Sub Set_History_Retention()
 WshShell.RegWrite "HKCU\SOFTWARe\Microsoft\Windows\CurrentVersion\Internet Settings\URL History\DaysToKeep", 99 ,"REG_DWORD"
End Sub

Sub Set_IE_Temp_Files_Folder()
 WshShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\History", strHistoryFolder & "\" & USERID,"REG_EXPAND_SZ"
 WshShell.RegWrite "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\History", strHistoryFolder & "\" & USERID, "REG_SZ"

 Const HKEY_CURRENT_USER = &H80000001

 strComputer = "."
 strKeyPath = "SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\Cache\Extensible Cache"

 Set objRegistry = GetObject("winmgmts:\\" & _
     strComputer & "\root\default:StdRegProv")

 DeleteSubkeys HKEY_CURRENT_USER, strKeypath

End Sub

Sub DeleteSubkeys(HKEY_CURRENT_USER, strKeyPath)
    objRegistry.EnumKey HKEY_CURRENT_USER, strKeyPath, arrSubkeys

    If IsArray(arrSubkeys) Then
        For Each strSubkey In arrSubkeys
            DeleteSubkeys HKEY_CURRENT_USER, strKeyPath & "\" & strSubkey
        Next
    End If

    objRegistry.DeleteKey HKEY_CURRENT_USER, strKeyPath
End Sub

Sub Set_Temp_Disk_Space()
 WshShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\Cache\Content\CacheLimit",strCacheLimit,"REG_DWORD"
 WshShell.RegWrite "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Cache\Content\CacheLimit",strCacheLimit,"REG_DWORD"
End Sub

Sub Set_History_Folder()
 WshShell.RegWrite "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\Cache",strTempIntFilesFolder & "\" & USERID, "REG_EXPAND_SZ"
End Sub