AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Funciones WLanguage / Funciones específicas de la Web / Funciones varias de WEBDEV
  • Presentación
  • Implementar la descarga de archivos en un sitio WEBDEV
  • Usando la ventana de descripción de control (control Botón, control Enlace, etc.)
  • Programación
  • Consejo: forzando la descarga del archivo (sólo por programación)
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Presentación
La descarga es la operación que consiste en guardar un archivo almacenado en el servidor en el ordenador del usuario Web. El archivo se "descarga" en el ordenador del usuario de la Web.
Algunos ejemplos:
  • Un sitio de DVD le permite descargar trailers de películas en su computadora
  • Los documentos se pueden descargar en una aplicación de gestión de documentos.
Implementar la descarga de archivos en un sitio WEBDEV
WEBDEV propone varios métodos para realizar una descarga de archivos:
  • ventana de descripción de la control Botón o control Enlace utilizada para la descarga.
  • programación en WLanguage.

Usando la ventana de descripción de control (control Botón, control Enlace, etc.)

Para proponer una descarga:
  1. Cree un control "Link", un control "Button", ....
  2. Abra la ventana de descripción del control.
  3. En la pestaña "General", seleccione "Enlace personalizado (correo electrónico, teléfono, etc.)".
  4. En "Dirección", seleccione "Archivo".
  5. Especificar el ruta completo del archivo (directorio + nombre) que se encuentra en el servidor. El archivo debe estar en el directorio "_WEB" del sitio.
En tiempo de ejecución, cuando se hace clic en este enlace o control Botón:
  • si se reconoce el tipo de archivo, el archivo se abrirá directamente en el navegador
  • si el tipo de archivo no es reconocido o si corresponde a un ejecutable, un cuadro de diálogo le permite descargar este archivo y/o ejecutarlo directamente.

Programación

Para proponer la descarga de un archivo mediante programación, simplemente usa FileDisplay en el código de clic del servidor del Botón o Enlace usado para descargar el archivo.
Ejemplo:
// Displays the file in the browser
// (if the format is recognized by the system, the file is displayed directly)
FileDisplay(CompleteDir(fWebDir()) + "NOTES.TXT", "text/plain")
En tiempo de ejecución, cuando se hace clic en este enlace o control Botón:
  • si se reconoce el tipo de archivo, el archivo se abrirá directamente en el navegador.
  • si el tipo de archivo no es reconocido o si corresponde a un ejecutable, un cuadro de diálogo le permite descargar este archivo y/o ejecutarlo directamente.

Consejo: forzando la descarga del archivo (sólo por programación)

Para forzar la descarga independientemente del tipo de archivo, simplemente use la siguiente línea de código (en el servidor haga clic en el código del Botón o control Enlace usado para descargar el archivo):
FileDisplay(CompleteDir(fWebDir()) + "NOTES.TXT", "application/unknown")
Sin embargo, el nombre del archivo propuesto para la descarga no corresponde a un nombre válido. Para proponer inmediatamente el nombre del archivo a descargar, simplemente añada este nombre después de los parámetros de FileDisplay.
FileDisplay(CompleteDir(fWebDir()) + "NOTES.TXT", ...
"application/unknown", "Notes.TXT")
Versión mínima requerida
  • Versión 9
Comentarios
Example Download Files via Mobile, Webdev, Windev (Download de arquivos)
//HTM_Download..URL="http://www.7-zip.org/a/7z920.exe"

OK is boolean = HTTPRequest("http://www.7-zip.org/a/7z920.exe")

IF OK = True THEN

Arquivo is Buffer = HTTPGetResult(httpResult)

IF InSimulatorMode() = True
OK = fSaveBuffer("c:\download\7z920.exe",Arquivo)
ELSE
OK = fSaveBuffer("/mnt/sdcard/7z920.exe",Arquivo)
END

IF OK = True THEN

IF InSimulatorMode() = True
OK = fFileExist("c:\download\7z920.exe")
ELSE
OK = fFileExist("/mnt/sdcard/7z920.exe")
END

IF OK = True THEN
Info("Download do arquivo 7z920.exe com sucesso!")
ELSE
Error("Nao foi possivel encontrar o arquivo do 7z920.exe. "+ErrorInfo(errMessage))
END

ELSE
Error("Nao foi possivel efetuar o download do 7z920.exe. "+ErrorInfo(errMessage))
END

ELSE

Error("URL nao encontrado para download do 7z920.exe. "+ErrorInfo(errMessage))

END
adrianoboller
17 01 2015

Última modificación: 27/05/2022

Señalar un error o enviar una sugerencia | Ayuda local