La mejor manera de consultar el espacio en disco en un servidor remoto
Pregunta
Estoy tratando de conseguir espacio libre en un servidor remoto consultando todas las unidades y luego haciendo un bucle hasta encontrar la unidad que estoy buscando.
¿Hay una mejor manera de hacer esto?
Dim oConn As New ConnectionOptions
Dim sNameSpace As String = "\\mnb-content2\root\cimv2"
Dim oMS As New ManagementScope(sNameSpace, oConn)
Dim oQuery As System.Management.ObjectQuery = New System.Management.ObjectQuery("select FreeSpace,Size,Name from Win32_LogicalDisk where DriveType=3")
Dim oSearcher As ManagementObjectSearcher = New ManagementObjectSearcher(oMS, oQuery)
Dim oReturnCollection As ManagementObjectCollection = oSearcher.Get()
Dim oReturn As ManagementObject
For Each oReturn In oReturnCollection
'Disk name
Console.WriteLine("Name : " + oReturn("Name").ToString())
'Free Space in bytes
Dim sFreespace As String = oReturn("FreeSpace").ToString()
If Left(oReturn("Name").ToString(), 1) = "Y" Then
Console.WriteLine(sFreespace)
End If
Next
Solución
¿Por qué no hacer que su consulta WMI solo retroceda donde nombre = 'Y'?
Entonces:
Dim oQuery As System.Management.ObjectQuery = New System.Management.ObjectQuery("select FreeSpace,Size,Name from Win32_LogicalDisk where DriveType=3 AND name='Y'")
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow