aks
aks

Reputation: 1859

calculate free space of C drive using vbscript

how can i write vbscript that calculates the free space in C: drive of a windows machine

Upvotes: 5

Views: 31003

Answers (4)

Quentin Smith
Quentin Smith

Reputation: 1

strComputer = "." 

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2") 
Set colItems = objWMIService.ExecQuery( _
    "SELECT * FROM Win32_LogicalDisk where DeviceID='c:'",,48) 

For Each objItem in colItems 

if len(objItem.VolumeName)>0 then

Wscript.Echo "-----------------------------------" & vbCrLf _
        & "VolumeName:" & vbTab & objItem.VolumeName  & vbCrLf _
        & "-----------------------------------" & vbCrLf _
        & "FreeSpace:" & vbTab _
        & FormatNumber((CDbl(objItem.FreeSpace)/1024/1024/1024))  & vbCrLf _
        & "Size:" & vbTab & vbTab _
        & FormatNumber((CDbl(objItem.Size)/1024/1024/1024))  & vbCrLf _
        & "Occupied Space:" & vbTab _
        & FormatNumber((CDbl(objItem.Size - objItem.FreeSpace)/1024/1024/1024)) 
   end if
Next

Upvotes: 0

aphoria
aphoria

Reputation: 20209

Set fso = CreateObject("Scripting.FileSystemObject")
Set d = fso.GetDrive("C:")
WScript.Echo d.FreeSpace

Upvotes: 9

king_nak
king_nak

Reputation: 11513

have a look at this page:

Set objWMIService = GetObject("winmgmts:")
Set objLogicalDisk = objWMIService.Get("Win32_LogicalDisk.DeviceID='c:'")
Wscript.Echo objLogicalDisk.FreeSpace

Upvotes: 9

mmmmmm
mmmmmm

Reputation: 32710

Use the FileSystemObject The page includes an JScript example

function ShowDriveInfo1(drvPath)
{
   var fso, drv, s ="";
   fso = new ActiveXObject("Scripting.FileSystemObject");
   drv = fso.GetDrive(fso.GetDriveName(drvPath));
   s += "Drive " + drvPath.toUpperCase()+ " - ";
   s += drv.VolumeName + "<br>";
   s += "Total Space: " + drv.TotalSize / 1024;
   s += " Kb" + "<br>"; 
   s += "Free Space: " + drv.FreeSpace / 1024;
   s += " Kb" + "<br>";
   Response.Write(s);
}

Upvotes: 1

Related Questions