Foros del Web » Programando para Internet » ASP Clásico »

Problema al borrar archivo con FSO.

Estas en el tema de Problema al borrar archivo con FSO. en el foro de ASP Clásico en Foros del Web. Éste es mi código: <% Dim fso Set fso = Server.CreateObject("Scripting.FileSystemObject") Dim folder Set folder = fso.GetFolder(Server.MapPath("archivos/")) dim archivo archivo = Request.QueryString("archivo") If fso.FileExists(archivo) Then ...
  #1 (permalink)  
Antiguo 30/04/2007, 04:15
 
Fecha de Ingreso: abril-2006
Mensajes: 69
Antigüedad: 19 años
Puntos: 0
Problema al borrar archivo con FSO.

Éste es mi código:

<%

Dim fso

Set fso = Server.CreateObject("Scripting.FileSystemObject")

Dim folder

Set folder = fso.GetFolder(Server.MapPath("archivos/"))

dim archivo

archivo = Request.QueryString("archivo")

If fso.FileExists(archivo) Then

fso.DeleteFile(archivo)

Else

Response.Write("No se encontró el archivo")

End If

Set fso = Nothing

'Response.Redirect("archivos_listado.asp")

%>

Pues bien, pese a que los archivos existen, mi script nunca los encuentra, y siempre me devuelve la cadena "No se encontró el archivo".

¿Alguna idea? Son mis primeras pruebas con el FSO, y estoy un poco verde todavía.

Muchas gracias.

Moleman.
  #2 (permalink)  
Antiguo 30/04/2007, 10:39
Avatar de gorka_22  
Fecha de Ingreso: septiembre-2003
Mensajes: 95
Antigüedad: 21 años, 7 meses
Puntos: 1
Re: Problema al borrar archivo con FSO.

Haz un response.write() del archivo a ver que dice
  #3 (permalink)  
Antiguo 30/04/2007, 11:00
 
Fecha de Ingreso: abril-2006
Mensajes: 69
Antigüedad: 19 años
Puntos: 0
Re: Problema al borrar archivo con FSO.

Ya lo hice. Y me da el nombre correcto del archivo. O sea, que la cadena que se pasa en el QueryString es la correcta, y el archivo existe, pero por alguna razón la fórmula "If fso.FileExists(archivo) Then fso.DeleteFile(archivo)" no me funciona.

Gracias.

Moleman.
  #4 (permalink)  
Antiguo 30/04/2007, 13:51
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 18 años, 1 mes
Puntos: 88
Re: Problema al borrar archivo con FSO.

intenta esto
Set folder = fso.GetFolder(Server.MapPath("archivos/"))

por este otro
Set folder = fso.GetFolder(Server.MapPath("/archivos/"))
__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
  #5 (permalink)  
Antiguo 12/05/2007, 01:32
 
Fecha de Ingreso: abril-2006
Mensajes: 69
Antigüedad: 19 años
Puntos: 0
Re: Problema al borrar archivo con FSO.

Perdón por la tardanza en contestar, estos días no he tenido tiempo de probar nada.

Gracias por tu ayuda, pero no funciona lo que me has dicho. Ahora me da error la página.

Lo dejo como estaba, y sigue pasando lo mismo, localiza el archivo pero no lo borra.

Supongo que es un poco extraño, esto. La verdad es que no sé qué hacer... ¿algún otro método para eliminar esos archivos?

Moleman.
  #6 (permalink)  
Antiguo 12/05/2007, 01:38
Avatar de Shiryu_Libra
Colaborador
 
Fecha de Ingreso: febrero-2007
Ubicación: Cantando "Screenager" en "Kirafa Kaput"
Mensajes: 3.614
Antigüedad: 18 años, 1 mes
Puntos: 88
Re: Problema al borrar archivo con FSO.

este ejemplo funciona muy bien, trata de acomodarlo a lo que necesitas,
aki vienen casi todas las funciones

Código PHP:
Sub ManipFiles
   Dim fso
f1f2s
   Set fso 
CreateObject("Scripting.FileSystemObject")
   
Set f1 fso.CreateTextFile("c:\archprue.txt"True)
   
Response.Write "Escribir archivo <br>"
   ' Escribir una línea.
   f1.Write ("Esto es una prueba.")
   ' 
Cerrar el archivo para la escritura.
   
f1.Close
   Response
.Write "Mover archivo a c:\tmp <br>"
   ' Obtener un identificador para el archivo en la raíz de C:\.
   Set f2 = fso.GetFile("c:\archprue.txt")
   ' 
Mover el archivo al directorio tmp.
   
f2.Move ("c:\tmp\archprue.txt")
   
Response.Write "Copiar archivo a c:\temp <br>"
   ' Copiar el archivo a \temp.
   f2.Copy ("c:\temp\archprue.txt")
   Response.Write "Eliminar archivos <br>"
   ' 
Obtener identificadores para la ubicaci&#243;n actual de los archivos.
   
Set f2 fso.GetFile("c:\tmp\archprue.txt")
   
Set f3 fso.GetFile("c:\temp\archprue.txt")
    
Eliminar los archivos.
   
f2.Delete
   f3
.Delete
   Response
.Write "Terminado"
End Sub 
suerte
__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:38.