Ejercicio para obtener el nombre de una unidad a partir de una ruta utilizando el FSO.
En un momento dado podemos tener un string con una ruta a un archivo o carpeta del sistema de archivos del servidor, del que deseamos obtener tan solo el nombre de la unidad donde estamos haciendo referencia en dicha ruta. Para ello podemos hacer uso del método GetDriveName().
GetDriveName (unidad)
Devuelve el nombre de la unidad indicada como parámetro. El parámetro que se espera es un string con la letra de la unidad y los dos puntos o una ruta absoluta a un archivo o directorio. No comprueba la existencia de la unidad, o la ruta introducida.
Este método nos devolverá un string con el nombre de la unidad. Podemos ver un ejemplo de funcionamiento a continuación.
<%
if request.form="" then
%>
<form action=obtennombreunidad.asp method=post>
Nombre de una unidad o ruta a archivo o directorio: <input type=text name=cadena>
<br>
<input type=submit value=Enviar>
</form>
<%
else
'recibo el valor del formulario
unidad = request.form("cadena")
response.write "El texto introducido para obtener la unidad es: " & unidad & "<p>"
'Conecto con el sistema de archivos
set FSO = server.createObject("Scripting.FileSystemObject")
'escribo el nombre de la unidad
response.write "El nombre de la unidad es: " & FSO.GetDriveName (unidad)
'enlace para probar otra vez
response.write "<p><a href=obtennombreunidad.asp>Probar otra vez</a>"
end if
%>
En el ejemplo se muestra un formulario donde el usuario debe introducir algún dato que recibirá el método GetDriveName(). Por tanto, el valor a introducir será una ruta o un nombre de unidad.
La página está compuesta por un IF que comprueba si se ha recibido o no un dato por el formulario. Si no se ha recibido nada, muestra el formulario en la página. Al dar al botón de submit, el formulario se enviará a la misma página, que entonces sí recibirá datos del formulario y por tanto realizará las operaciones con el FSO.
Las operaciones son crear el FSO y luego invocar al método GetDriveName() pasándole el valor enviado por el formulario. El script muestra en pantalla todos los valores con los que trabaja para que se pueda comprobar el resultado de ejecutar las sentencias.
En el caso que introduzcamos "c" devolverá un string vacío. Para identificar una unidad habrá que introducir algo como "c:" o una ruta absoluta como "c:\inetpub". En estos casos, lo que obtendremos es el string "c:".
GetDriveName (unidad)
Devuelve el nombre de la unidad indicada como parámetro. El parámetro que se espera es un string con la letra de la unidad y los dos puntos o una ruta absoluta a un archivo o directorio. No comprueba la existencia de la unidad, o la ruta introducida.
Este método nos devolverá un string con el nombre de la unidad. Podemos ver un ejemplo de funcionamiento a continuación.
<%
if request.form="" then
%>
<form action=obtennombreunidad.asp method=post>
Nombre de una unidad o ruta a archivo o directorio: <input type=text name=cadena>
<br>
<input type=submit value=Enviar>
</form>
<%
else
'recibo el valor del formulario
unidad = request.form("cadena")
response.write "El texto introducido para obtener la unidad es: " & unidad & "<p>"
'Conecto con el sistema de archivos
set FSO = server.createObject("Scripting.FileSystemObject")
'escribo el nombre de la unidad
response.write "El nombre de la unidad es: " & FSO.GetDriveName (unidad)
'enlace para probar otra vez
response.write "<p><a href=obtennombreunidad.asp>Probar otra vez</a>"
end if
%>
En el ejemplo se muestra un formulario donde el usuario debe introducir algún dato que recibirá el método GetDriveName(). Por tanto, el valor a introducir será una ruta o un nombre de unidad.
La página está compuesta por un IF que comprueba si se ha recibido o no un dato por el formulario. Si no se ha recibido nada, muestra el formulario en la página. Al dar al botón de submit, el formulario se enviará a la misma página, que entonces sí recibirá datos del formulario y por tanto realizará las operaciones con el FSO.
Las operaciones son crear el FSO y luego invocar al método GetDriveName() pasándole el valor enviado por el formulario. El script muestra en pantalla todos los valores con los que trabaja para que se pueda comprobar el resultado de ejecutar las sentencias.
En el caso que introduzcamos "c" devolverá un string vacío. Para identificar una unidad habrá que introducir algo como "c:" o una ruta absoluta como "c:\inetpub". En estos casos, lo que obtendremos es el string "c:".
Miguel Angel Alvarez
Fundador de DesarrolloWeb.com y la plataforma de formación online EscuelaIT. Com...