VB SCripting - Set System Restore size depending on hard drive size
Search




hits.Login
'********Set System Restore size depending on hard drive size
strComputer = "."
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_DiskDrive",,48)
For Each objItem in colItems
objItem.size = objItem.size /1000000000
DiskSize = objItem.size
DriveNumber = objItem.DeviceID
Next
If DriveNumber = "\\.\PHYSICALDRIVE0" Then
WshShell.RegWrite "HKLM\Software\Microsoft\Windows NT\CurrentVersion\SystemRestore\DisableSR" , 0 , "REG_DWORD"
If DiskSize <= 15 Then
WshShell.RegWrite "HKLM\Software\Microsoft\Windows NT\CurrentVersion\SystemRestore\DiskPercent" , 5 , "REG_DWORD"
WshShell.RegWrite "HKLM\Software\Microsoft\Windows NT\CurrentVersion\SystemRestore\Cfg\DiskPercent" , 5 , "REG_DWORD"
End If
If DiskSize => 16 AND DiskSize <= 29 Then
WshShell.RegWrite "HKLM\Software\Microsoft\Windows NT\CurrentVersion\SystemRestore\DiskPercent" , 3 , "REG_DWORD"
WshShell.RegWrite "HKLM\Software\Microsoft\Windows NT\CurrentVersion\SystemRestore\Cfg\DiskPercent" , 3 , "REG_DWORD"
End If
If DiskSize => 30 AND DiskSize <= 49 Then
WshShell.RegWrite "HKLM\Software\Microsoft\Windows NT\CurrentVersion\SystemRestore\DiskPercent" , 2 , "REG_DWORD"
WshShell.RegWrite "HKLM\Software\Microsoft\Windows NT\CurrentVersion\SystemRestore\Cfg\DiskPercent" , 2 , "REG_DWORD"
End If
If DiskSize => 50 Then
WshShell.RegWrite "HKLM\Software\Microsoft\Windows NT\CurrentVersion\SystemRestore\DiskPercent" , 1 , "REG_DWORD"
WshShell.RegWrite "HKLM\Software\Microsoft\Windows NT\CurrentVersion\SystemRestore\Cfg\DiskPercent" , 1 , "REG_DWORD"
End If
Else
MSGBOX("No Drive Detected")
End If


