Comprobar si existe unidad con VBS

el_richal
16 de Febrero del 2006
Hola a todos,

estoy haciendo un script para que se ejecute cada vez que se inicia sesion en mi dominio de W2000 y quisiera saber si hay alguna funcion en VBS para comprobar si una letra de unidad ya está ocupada.

Gracias y un saludo

mvallejos
16 de Febrero del 2006
Hay una API que se llama GetLogicalDriveStrings y que te retorna una cadena con una concatenacion de las unidades de disco utilizadas actualmente

Coloca esta declaración en un módulo

Declare Function GetLogicalDriveStrings Lib "kernel32" Alias "GetLogicalDriveStringsA" (ByVal nBufferLength As Long, ByVal lpBuffer As String) As Long


Prueba esta Sub

Sub VerDrives(ByRef CAD As Variant)
Dim Aux As String, Posi
Aux = String(35, Chr$(0))
GetLogicalDriveStrings 35, Aux
'En qué posición hay dos caracteres nulos seguidos
Posi = InStr(1, Aux, Chr$(0) + Chr$(0))
CAD = Mid(Aux, 1, Posi - 1)
End Sub

Saludos