We can determine Free Disk Space on Server using WMI provider. In this article we will use GetFreeDiskSpace Function which is written in VB.Net and you can use it in your project.
Function Parameter
Hard-Disk Information which we will gather is given below:
Function Parameter
- Target Computer Name
- Admin Credential(Username/Password)
Hard-Disk Information which we will gather is given below:
- Drive Letter
- File System
- Total Space (GB)
- Free Space (GB)
Public Sub GetFreeDiskSpace(ByVal strComputer As String, ByVal strUserName As String, ByVal strPwd As String) Dim query As Management.ManagementObjectSearcher Dim queryCollection As Management.ManagementObjectCollection Dim management_object1 As Management.ManagementObject Dim msc As Management.ManagementScope If (strComputer = System.Environment.MachineName) Then msc = New Management.ManagementScope("\\" & strComputer & "\root\cimv2") Else Dim co As New Management.ConnectionOptions co.Username = strUserName co.Password = strPwd msc = New Management.ManagementScope("\\" & strComputer & "\root\cimv2", co) End If Dim query_command As String = "SELECT * FROM Win32_LogicalDisk" Dim select_query As Management.SelectQuery = New Management.SelectQuery(query_command) Try query = New Management.ManagementObjectSearcher(msc, select_query) queryCollection = query.Get() Dim strDisk As String = "" For Each management_object1 In queryCollection strDisk = "Drive Letter: " & management_object1("DeviceID") & vbCrLf & "File System: " & management_object1("FileSystem") & vbCrLf & "Total Space: " & ((CType(management_object1("Size"), String) / 1024) / 1024) / 1024 & " GB" & vbCrLf & "Free Space: " & ((CType(management_object1("FreeSpace"), String) / 1024) / 1024) / 1024 & " GB" MessageBox.Show(strDisk) Next management_object1 Catch ex As Exception MessageBox.Show(ex.ToString()) End Try End Sub