Utilizamos cookies propias y de terceros. [Más información sobre las cookies].
Política de cookies
Proyecto AjpdSoft

· Inicio
· Buscar
· Contactar
· Cookies
· Descargas
· Foros
· Historia
· Nosotros
· Temas
· Top 10
· Trucos
· Tutoriales
· Wiki
Obtener siguiente letra de unidad libre - Visual Basic Script
Lenguaje de programación Visual Basic Script

Os mostramos cómo obtener la siguiente letra de unidad del equipo libre, para, por ejemplo, conectar una unidad de red utilizando esta letra. Este script VBS también mostrará las letras de unidad utilizadas actualmente.

Para ejecutar este código es suficiente con copiarlo a un fichero de texto plano (sin formato) y ponerle como extensión "vbs". Haciendo doble clic sobre el fichero se compilará automáticamente.

Esto es válido para sistemas operativos Windows XP, Windows Vista, Windows 2000 Server, Windows Server 2003, Windows Server 2008.


Set objDiccionario = CreateObject("Scripting.Dictionary")
dim nombreEquipo
dim objDisco
dim letraUnidad
dim unidadesOcupadas, unidadesOcupadasTexto
dim i

nombreEquipo = "."

Set objWMI = GetObject("winmgmts:\\" & nombreEquipo & "\root\cimv2")
Set unidadesActuales = objWMI.ExecQuery("Select * from Win32_LogicalDisk")

For Each objDisco in unidadesActuales
  objDiccionario.Add objDisco.DeviceID, objDisco.DeviceID
Next

unidadLibre = ""
For i = 67 to 90
  letraUnidad = Chr(i) & ":"
  If objDiccionario.Exists(letraUnidad) Then
  Else
    unidadLibre = letraUnidad
    Exit For
  End If
Next

unidadesOcupadas = objDiccionario.Items
for i = 0 to ubound(unidadesOcupadas)
  unidadesOcupadasTexto = unidadesOcupadasTexto & unidadesOcupadas(i)
Next
 
If unidadLibre = "" Then
  msgbox ("No hay unidades libres o ha habido algún error.")
Else  
  msgbox ("Siguiente letra de unidad libre: " & unidadLibre & chr(13) & chr(13) & "Unidades ocupadas actualmente: " & unidadesOcupadasTexto)
End If




Publicado el: 2008-10-29

Visita nuestro nuevo sitio web con programas y contenidos actualizados: Proyecto A