viernes, 2 de julio de 2010

¿Porque mi archivo descargado desde mi servidor FTP no se guarda en la carpeta que cree desde mi aplicación en vb.Net?

viernes, 2 de julio de 2010

Estas compilando tu Aplicación en vb.Net que te permitirá descargar los archivos del servidor FTP y todo te sale a la perfección, es decir: estableces la conexión con el Server FTP, tu archivo descargado se guarda en la carpeta que tu has asignado desde código fuente en la ruta de tu aplicación por defecto, es decir "c:\Archivos de Programas\Mi Aplicación\Archivos del FTP\archivo.doc". De pronto, vas a otra maquina, instalas tu Aplicación para probarlo (según tu para jactarte) y te das cuenta que tu Archivo que supuestamente descargaste no aparece en la carpeta deseada ¿Que paso?

La razón de este problemilla?: pues sinceramente no estoy seguro pero todo indica que se trata de los Permisos de Windows ya que estas carpetas son especiales y no pueden ser alteradas desde otra fuente que no sea la acciones directas del usuario mismo como: guardar, eliminar, modificar los archivos (las cuales contienen) desde su interior, por el contrario ya que deseamos alterarlas desde una fuente intermedia haciendo uso de nuestra Aplicación, necesitaríamos un código especial que nos permitiese realizar justamente estas acciones dentro de las carpetas en cuestión.

Señores yo les recomendaria lo siguiente: Evita descargar el archivo en un dirección que pudiera incluir carpetas del Sistema Operativo (Windows, Archivos de Programas, Mis Documentos, etc), que comúnmente (supongo) sería por ejemplo "c:\Archivos de Programas\Mi sistema\Archivos ftp\archivo.doc", ya que podría ocasionar un error o en todo caso ¡no mostrar el error! pero en cambio ¡no guardar el archivo! (lo que sucedió en mi caso), asi que evítalo y no te compliques, yo te sugiero guardarlo en otra unidad o por ejemplo en "C:\Archidos FTP". O Si consigues algun codigo o propiedad que nos permita realizar estas acciones por favor ¡compártalas hombre!, y mucho mejor si los publicais en nuestro blog, tu solución alternativa.

Aca los dejo el código en vb.Net para orientarlos:

Dim ruta_archivo As String
' Si la carpeta donde deseamos guardar nuestros archivos no esta creado , pues que creen, lo creamos pues
If Not Directory.Exists("c:\Archivos FTP") Then
Directory.CreateDirectory("c:\Archivos FTP")
End If
ruta_archivo = "c:\Archivos FTP\archivodescargado.doc"

'importante, es necesario comprobar si el archivo ya existe para abrirlo o ejecutarlo (si es que esa es tu intensión) directamente y no enviar otra vez la solicitud de descarga del servidor FTP
If Not File.Exists(ruta_archivo) Then
Try
DescargarArchivoFTP(ruta_archivo, "archivodescargado.doc") ' Click aqui para ver el procedimiento en la cual descarga el archivo
Catch ex As Exception
MsgBox(ex.Message)
Exit Sub
End Try
End If
End If
Try
System.Diagnostics.Process.Start(ruta_archivo) ' si es que tu intension es abrir oejecutar el archivo
GrabarEstado()
Catch ex As Exception
MsgBox(ex.Message)
End Try


Post relacionados :

Buscar

 
Copyright © 2009 .Net Solucion