Autor Tema: Consultar espacio disco Pc Remoto  (Leído 2123 veces)

0 Usuarios y 1 Visitante están viendo este tema.

el_trocha

  • Kilobyte
  • **
  • Mensajes: 62
  • Reputación: +1/-2
    • Ver Perfil
Consultar espacio disco Pc Remoto
« en: Octubre 07, 2015, 01:41:54 am »
Me salto la duda el otro dia:

Se podría consultar características de un servidor remoto sin tener una aplicación cliente servidor instalada ?

Intento crear una aplicación que pida información a un servidor sobre su espacio en disco.

Tengo una red de servidores muy amplia y me gustaría poder conocer los espacios sin tener que ir abriendo uno cada vez.

Se como hacerlo de forma local y conozco la api para ver las características de discos pero como dije antes en forma local.

Se podría hacer esto ?????

Un saludo y gracias por la ayuda



Albertomi

  • Gigabyte
  • ****
  • Mensajes: 281
  • Reputación: +153/-0
    • Ver Perfil
Re:Consultar espacio disco Pc Remoto
« Respuesta #1 en: Octubre 07, 2015, 02:52:58 am »
Estimado el_trocha



Puedes usar WMI, aquí algo de código. Si la cuenta con la que ejecutas este código sobre tu red, dispone de los permisos requeridos (Administrador) no deberías de tener problema.



Public Sub ListDiskSpace()
  Dim strComputer As String
  Dim strRetval As String
  Dim objWMIService As Object
  Dim colDisks As Object
  Dim objDisk  As Object
 
  strComputer = "."
  Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
  Set colDisks = objWMIService.ExecQuery("Select * from Win32_LogicalDisk")
  For Each objDisk In colDisks
    strRetval = strRetval & "Device ID: " & objDisk.DeviceID & vbCrLf
    strRetval = strRetval & "Device Type: " & GetDriveType(objDisk.DriveType) & vbCrLf
    strRetval = strRetval & "Free Disk Space: " & objDisk.FreeSpace & vbCrLf
  Next
 
  Set objWMIService = Nothing
  Set colDisks = Nothing
  Set objDisk = Nothing
 
  Debug.Print strRetval
End Sub


Private Function GetDriveType(ByVal DriveTypeID As Long) As String
  Select Case DriveTypeID
    Case 1: GetDriveType = "No root directory. " & "Drive type could not be " & "determined."
    Case 2: GetDriveType = "Removable drive."
    Case 3: GetDriveType = "Local hard disk."
    Case 4: GetDriveType = "Network disk."
    Case 5: GetDriveType = "Compact disk."
    Case 6: GetDriveType = "RAM disk."
    Case Else
     GetDriveType = "Drive type could not be" & " determined."
  End Select
End Function


Saludos, desde algún lugar de Lima-Perú
Saludos, desde algún lugar de Lima-Perú