- Feb 10, 2006
- 36
- 0
- 0
CHECK SIZE OF DISK
Set SC = New SpaceChecker
Set SC = Nothing
Class SpaceChecker
Private Sub Class_Initialize()
strComputer = "."
Set WMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer &
"\root\cimv2")
Set colDisks = WMIService.ExecQuery("Select * from Win32_LogicalDisk")
For each Disk in colDisks
'Local and Network Drives Only
If Disk.DriveType >= 3 And Disk.DriveType =< 4 Then
msgbox Disk.DeviceID & " " &
FormatNumber(Divide(CheckNumber(Disk.FreeSpace),CheckNumber(Disk.Size)) * 100,2)
End If
Next
Set colDisks = Nothing
Set WMIService = Nothing
End Sub
Private Sub Class_Terminate()
End Sub
Private Function Divide(int1,int2)
Divide = 0
If CDbl(int1) > 0 And CDbl(int2) > 0 Then
Divide = int1 / int2
End If
End Function
Private Function CheckNumber(int1)
CheckNumber = 0
If IsNumeric(int1) Then
CheckNumber = int1
End If
End Function
End Class
CHECK SIZE OF FOLDER
========= BEGIN Folder_Size_Check.vbs ==================
Dim objFSO, f, f1, f2
' ***** Create new date string for use with log file name
Monthfrom = Month(Date)
Dayfrom = Day(Date)
Yearfrom = Year(Date)
newDate = Yearfrom & "-" & Monthfrom & "-" & Dayfrom
Set objFSO = CreateObject("Scripting.FileSystemObject")
' ***** Create log file for results of folder size check
Set f1=objFSpentextFile ("Folder_Size_Check__" & newDate &
".log",8,True)
' ***** Insert timestamp in log file
f1.writeline vbCrlf & Now & vbCrlf
f1.close
' ***** Use Paths.txt for the list of folder paths to check
Set objFile = objFSO.OpenTextFile("C:\Paths.txt", 1)
Do Until objFile.AtEndOfStream
path = objFile.ReadLine
Set f = objFSO.GetFolder(path)
' ***** Write folder size info to log file
' ***** FormatNumber function is used to display the size in MB
Set f2=objFSpentextFile ("Folder_Size_Check__" & newDate &
".log",8,True)
f2.writeline VBcrlf
f2.writeline path & VBcrlf & VBcrlf & FormatNumber(F.Size / (1024 ^
2),0) & " MB"
f2.writeline VBcrlf &
"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
f2.close
Loop
Set objFSO = nothing
Set f = nothing
Set f1 = nothing
Set f2 = nothing
========= END Folder_Size_Check.vbs ==================
Set SC = New SpaceChecker
Set SC = Nothing
Class SpaceChecker
Private Sub Class_Initialize()
strComputer = "."
Set WMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer &
"\root\cimv2")
Set colDisks = WMIService.ExecQuery("Select * from Win32_LogicalDisk")
For each Disk in colDisks
'Local and Network Drives Only
If Disk.DriveType >= 3 And Disk.DriveType =< 4 Then
msgbox Disk.DeviceID & " " &
FormatNumber(Divide(CheckNumber(Disk.FreeSpace),CheckNumber(Disk.Size)) * 100,2)
End If
Next
Set colDisks = Nothing
Set WMIService = Nothing
End Sub
Private Sub Class_Terminate()
End Sub
Private Function Divide(int1,int2)
Divide = 0
If CDbl(int1) > 0 And CDbl(int2) > 0 Then
Divide = int1 / int2
End If
End Function
Private Function CheckNumber(int1)
CheckNumber = 0
If IsNumeric(int1) Then
CheckNumber = int1
End If
End Function
End Class
CHECK SIZE OF FOLDER
========= BEGIN Folder_Size_Check.vbs ==================
Dim objFSO, f, f1, f2
' ***** Create new date string for use with log file name
Monthfrom = Month(Date)
Dayfrom = Day(Date)
Yearfrom = Year(Date)
newDate = Yearfrom & "-" & Monthfrom & "-" & Dayfrom
Set objFSO = CreateObject("Scripting.FileSystemObject")
' ***** Create log file for results of folder size check
Set f1=objFSpentextFile ("Folder_Size_Check__" & newDate &
".log",8,True)
' ***** Insert timestamp in log file
f1.writeline vbCrlf & Now & vbCrlf
f1.close
' ***** Use Paths.txt for the list of folder paths to check
Set objFile = objFSO.OpenTextFile("C:\Paths.txt", 1)
Do Until objFile.AtEndOfStream
path = objFile.ReadLine
Set f = objFSO.GetFolder(path)
' ***** Write folder size info to log file
' ***** FormatNumber function is used to display the size in MB
Set f2=objFSpentextFile ("Folder_Size_Check__" & newDate &
".log",8,True)
f2.writeline VBcrlf
f2.writeline path & VBcrlf & VBcrlf & FormatNumber(F.Size / (1024 ^
2),0) & " MB"
f2.writeline VBcrlf &
"~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
f2.close
Loop
Set objFSO = nothing
Set f = nothing
Set f1 = nothing
Set f2 = nothing
========= END Folder_Size_Check.vbs ==================