Red de conocimiento informático - Aprendizaje de código fuente - ¿Cómo descargar archivos en un lenguaje sencillo?

¿Cómo descargar archivos en un lenguaje sencillo?

Easy Language solo viene con una biblioteca que admite la descarga bt. La descarga directa no requiere comandos y requiere varios parámetros. El código de la imagen es el siguiente

Componentes: 2 cuadros de edición, 3 botones de acceso, 3 etiquetas, una barra de progreso y un reloj.

Código: .Versión: 2

. Biblioteca de soporte: downlib

. Biblioteca de soporte iext2

. ¿Programa de biblioteca de shell de soporte? Ensamblaje de Windows 1

. ¿Variables de conjunto de programas? Descargar parámetros, parámetros de tarea

¿Variables de configuración del programa? Descargar objeto

.¿Variable de ensamblaje? ¿Estado de descarga? Entero

. ¿Variables de montaje? Descargar información, número de bytes

¿Variables de ensamblaje? Tamaño de archivo, tipo decimal de doble precisión

¿Subrutina? ___Ventana de inicio_creada

. ¿Subrutina? _Super_Botón_Recibido_Clic

. ¿Variables locales? Descargar dirección, tipo de texto

. si es cierto? (editbox1.content="")

¿Cuadro de información?("No se ingresó ninguna dirección de descarga",?0,?,?)

¿Volver?()

.Si es verdadero, finalice

. if true(editbox2.content? = ? "")

Infobox? ("No se ha seleccionado ninguna ruta para guardar", ?0, ?, ?)

Regresar?()

.Si es verdadero final

¿Descargar dirección?¿Eliminar el primero y el último vacío?(editar cuadro 1. contenido)

Descargar parámetros. Tipo = ?#Constante de transferencia. Descargar

Descargar parámetros. Dirección del archivo = ?Dirección de descarga

Parámetros de descarga. Tiempo de espera de hilo = 1000

Parámetros de descarga. Número predeterminado de subprocesos = 3

Descargar parámetros. Ruta del archivo local =? Cuadro de edición 2. Contenido

Descargar parámetros. Tiempo de espera de conexión = 5000

Parámetros de descarga. Tiempo de espera de envío = 5001

Descargar parámetros. Tiempo de espera de recepción = 10000

Descargar parámetros. Tamaño de recepción = 10240

Parámetros de descarga. Función de devolución de llamada de interacción = Función de devolución de llamada de interacción

SuperButton_Receive.Disabled? Verdadero

Descargar tarea. ¿Agregar nueva tarea? (Descargar parámetros)

¿Subrutina? _Super_Button_Browse_Clicked

Cuadro de edición 2. Explorar carpetas ("Seleccionar ruta de guardado local")

¿Subrutina? Función de devolución de llamada interactiva, ?Integer

.parameters? Tipo de mensaje,? Entero

.¿Parámetros? Información del hilo, ?entero

. ¿parámetro? Parámetro 3, número entero

. ¿parámetro? Parámetro 4, ? Entero

¿Parámetro? Información del objeto,?entero

. ¿Empezando a juzgar? (Tipo de mensaje = ? #Constante de transmisión. Inicio de descarga y carga)

Tamaño del archivo = ?Parámetro 3

. (¿Tipo de información? = ? #Constante de transferencia.

Descarga y carga completadas)

¿Cuadro de información? ("Descarga completa",?0,??)

Fin?()

.¿Juez? (¿Tipo de mensaje? = ? #Constante de transferencia. Se ha iniciado un nuevo hilo de descarga)

. ¿juez? (¿Tipo de información? #Transferir constante. El hilo de descarga continúa descargándose)

¿Sentencia? (Tipo de información =? #Constante de transferencia. El hilo finaliza normalmente)

¿Sentencia? (Tipo de información = #Constante de transferencia. El hilo finalizó de manera anormal)

¿Sentencia? (Tipo de información = #Constante de transferencia. Existe un archivo con el mismo nombre)

. (Tipo de información = #Constante de transmisión. Datos recibidos)

¿Sentencia? (Tipo de información = #Constante de transmisión. Rango de datos de descarga)

.Valor predeterminado

.Fin del juicio

¿Devolución (0)

.Subrutina?_clock_cycle_event

. si es cierto? (Super_Button_Receive. ¿Desactivar? = Verdadero)

. if (tamaño de archivo = 0)

Etiqueta.title = ?"Completado: 0"

.else

Etiqueta. Título =?"Completado:"? ¿Convertir valor a texto formateado? (Descargar tarea. Tome la duración de la tarea de descarga. ()?÷?Tamaño de archivo?×?100,?0,?Falso)??""

. Si finaliza

Barra de progreso. ¿Ubicación? =? ¿Redondeado a? (Descargar tarea. Tome la duración de la tarea de descarga. ()?÷?Tamaño de archivo?×?100,?0)

.Finalizar si es verdadero

. Subrutina ?_Super_Button_Cancel_Was_Clicked

Descargar parámetros. Tipo = ?#Constante de transferencia. Descarga y carga completadas

Super_Button_Receive. ¿Desactivado? Falso

ProgressBar.Position = 0

Label.Title = ?"Cancelar usuario"